11 Stimmen

Was bedeutet "..::." in C#?

Ich habe diese Signatur in der ListView-Klasse gesehen:

public ListView..::.ListViewItemCollection Items { get; }

Als ich das sah, "Was?!"

Ich habe "Punkt Punkt Doppelpunkt Doppelpunkt Punkt" und "..::." auf Google gesucht, aber kein Ergebnis gefunden.

alt text

0 Stimmen

Compilet es? Der ::-Operator ist der Namensraum-Alias-Operator, aber die Punkte? Ich habe keine Ahnung...

16voto

James Kirk Punkte 154

Das ist kein C#; das ist JScript. In C# wäre es:

public ListView.ListViewItemCollection Items { get; }

Es ist etwas anders, weil ListViewItemCollection eine innere Klasse von ListView ist.

Ich vermute, dass du das gesehen hast, als du dir ListView.Items Property (System.Windows.Forms) angesehen hast.

Wenn du dir die Liste für alle anderen Sprachen ansiehst, werden sie alle mit der JScript-Syntax aufgelistet. Du hast einen Dokumentationsfehler gefunden.

0 Stimmen

Ja, ich habe mir die ListView.Items-Eigenschaft angesehen. Ich vermutete, dass es sich um einen Fehler handelte, aber als ich die Columns-Eigenschaft sah, wurde sie auch als "..::." aufgeführt. Es scheint, dass der Dokumentationsgenerator einen Fehler hat :D Danke!

-4voto

tsimon Punkte 8182

ListViewItemCollection ist ein verschachtelter Typ von ListView, was bedeutet, dass in dem Code die Collection-Klasse innerhalb der ListView-Definition definiert ist, wie folgt:

public class ListView {
  public ListViewItemCollection Items {get;}

  public class ListViewItemCollection : IList {
    // mehr Code hier
  }
}

Ich würde annehmen, dass es so codiert ist, um ihren Quellcodebaum ein wenig sauberer zu halten. Auf diese Weise sind alle Hilfssammlungsklassen, die mit der ListView-Steuerung verbunden sind, nicht über das Verzeichnis verstreut. Innere Klassen haben einige besondere Eigenschaften, aber keine, die ich mir hier vorstellen könnte.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X