Benutzer mit den meisten Antworten
Labels in c#

Frage
-
Hallo, ich habe von VB6 zu C# gewechselt. Mir ist jetzt aufgefallen, daß Labels keinen Index mehr haben, wenn sie mit Copy/Paste erzeugt werden. So kannte ich es von VB6.
Gibt es in C' so eine Möglichkeit z.B. LabelXY[1]
LabelXY[2] ... usw.
Danke für die Antwort.
Gruß
Wolfgang
Antworten
-
Hallo Wolfgang,
Control-Arrays wie in Visual Basic 6 gibt es unter .NET nicht mehr (auch nicht in Visual Basic .NET).
Wenn Du Steuerelemente im Designer erzeugst erhalten sie einen eindeutigen Namen mit einer fortlaufenden Nummer.
Willst Du Gruppen von Steuerelementen zusammenfassen, so kannst Du dies über Arrays oder Auflistungen wie List(T) tun.
Über die Controls-Auflistung, über die jeder Container (Form, UserControl usw.) verfügt, kannst Du die enthaltenen Steuerelemente direkt ansprechen. Eine Diskussion in der um es so etwas ging wäre: Steuerelemente von einem Panel abfragen
Falls Du spezielle Gewohnheiten nachbilden möchtest, so gibt es dafür meist einen Ersatz.
Gruß Elmar
- Als Antwort markiert Robert BreitenhoferModerator Dienstag, 30. Oktober 2012 12:08
-
Hallo,
arbeitest du mit Windows Forms/WPF?
Ich weiß zwar nicht, wie es mit VB6 war, aber in C# bekommen alle Labels einen Namen (In WPF kann man den auch löschen) Wenn du nun eines erzeugst, bekommt es Beispielsweise den Namen label1 Wenn du es nun Kopierst, kommt es auf deine Version von Visual Studio an, sowie auf deine Technik (WinForms/WPF) In VS 2012 werden die Labels in WinForms label1, dann label2 und label3 usw. benannt in WPF dagegen label1, label1_Copy, label1_Copy1, label1_Copy2, ...
Zugreifen kannst dann immer über den Namen (label1, label2, label1_copy, ...)
Ein Array (LabelXY[]) geht da nicht. Du könntest das Containerelement nehmen und dort die Kinder mit dem Index ansprechen, das macht aber soweit ich weiß keiner, zumal die Teilweise extrem durcheinander angeordnet zu sein scheinen.
Koopakiller - http://koopakiller.ko.ohost.de/
- Als Antwort markiert Robert BreitenhoferModerator Dienstag, 30. Oktober 2012 12:08
Alle Antworten
-
Hallo,
arbeitest du mit Windows Forms/WPF?
Ich weiß zwar nicht, wie es mit VB6 war, aber in C# bekommen alle Labels einen Namen (In WPF kann man den auch löschen) Wenn du nun eines erzeugst, bekommt es Beispielsweise den Namen label1 Wenn du es nun Kopierst, kommt es auf deine Version von Visual Studio an, sowie auf deine Technik (WinForms/WPF) In VS 2012 werden die Labels in WinForms label1, dann label2 und label3 usw. benannt in WPF dagegen label1, label1_Copy, label1_Copy1, label1_Copy2, ...
Zugreifen kannst dann immer über den Namen (label1, label2, label1_copy, ...)
Ein Array (LabelXY[]) geht da nicht. Du könntest das Containerelement nehmen und dort die Kinder mit dem Index ansprechen, das macht aber soweit ich weiß keiner, zumal die Teilweise extrem durcheinander angeordnet zu sein scheinen.
Koopakiller - http://koopakiller.ko.ohost.de/
- Als Antwort markiert Robert BreitenhoferModerator Dienstag, 30. Oktober 2012 12:08
-
Hallo Wolfgang,
Control-Arrays wie in Visual Basic 6 gibt es unter .NET nicht mehr (auch nicht in Visual Basic .NET).
Wenn Du Steuerelemente im Designer erzeugst erhalten sie einen eindeutigen Namen mit einer fortlaufenden Nummer.
Willst Du Gruppen von Steuerelementen zusammenfassen, so kannst Du dies über Arrays oder Auflistungen wie List(T) tun.
Über die Controls-Auflistung, über die jeder Container (Form, UserControl usw.) verfügt, kannst Du die enthaltenen Steuerelemente direkt ansprechen. Eine Diskussion in der um es so etwas ging wäre: Steuerelemente von einem Panel abfragen
Falls Du spezielle Gewohnheiten nachbilden möchtest, so gibt es dafür meist einen Ersatz.
Gruß Elmar
- Als Antwort markiert Robert BreitenhoferModerator Dienstag, 30. Oktober 2012 12:08
-
Hallo WME070754,
Ich gehe davon aus, dass die Antworten Dir weitergeholfen haben.
Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.Grüße,
RobertRobert Breitenhofer, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.