Überladen des Operators für eckige Klammern in C#
Der Operator für eckige Klammern, auch Indexer genannt, ermöglicht benutzerdefinierten Klassen verhalten sich wie integrierte Sammlungen und ermöglichen den Zugriff auf ihre Elemente mithilfe von Indizes. In C# wird der Indexer als Eigenschaft mit einem speziellen Namen „Item“ implementiert.
Um den Indexer in Ihren eigenen Klassen zu verwenden, müssen Sie eine Eigenschaft mit der folgenden Syntax deklarieren:
public object this[int x, int y] { get {...}; set {...} }
Im Codeausschnitt stellt dies die Instanz der Klasse dar, x und y sind die Indizes und get und set geben die Logik zum Abrufen und Festlegen von Werten an den angegebenen Stellen an Indizes.
Der Indexer in der DataGridView-Klasse ermöglicht Ihnen beispielsweise den Zugriff auf Zellen, indem er Zeilen- und Spaltenindizes bereitstellt:
DataGridView dgv = ...; DataGridViewCell cell = dgv[1,5];
Die Item-Eigenschaft von DataGridView ist für die Implementierung des Indexerverhaltens verantwortlich . Der Indexer für DataGridView löst keine Ausnahmen aus, aber es ist wichtig zu beachten, dass Sie ungültige Koordinaten (außerhalb des Bereichs) explizit in Ihren eigenen Indexer-Implementierungen behandeln sollten.
Das obige ist der detaillierte Inhalt vonWie kann ich den eckigen Klammeroperator (Indexer) in C# überladen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!