Hi,
gleich eins vorne weg. Bitte keine Kommentare wie "Das hatten wir schon. Benutze die Forumssuche". Ich hab schon gesucht, aber nix passendes gefunden.
In meiner Form füge ich eine UserControl1 mit
Controls.Add(Usercontrol1) hinzu und des klappt auch alles ganz wunderbar.
Aber wie kann ich jetzt zum Beispiel auf labels und buttons auf meiner UserControl1 zugreifen?
Ich möchte so etwas:
variable = UserControl1.label1.text;
Aber das geht ja net. Weil er laut Fehlermeldung keine Definition für das label hat.
du hast ja irgendwo in deinem Code
MeinUserControl control = new MeinUserControl();
dann kannst du mit control.Property aufsämtlihce Public properties des Kontrols zugreifen
Hallo,
Dein Control Hat eine 'Property' namens Controls und die hat eine Methode Add().
Aber das sind echt Grundlagen, ohne das böse zu meinen empfehle ich Dir, ein Buch zu lesen;
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
Nochmal hallo,
jetzt hab ich ja gar nichts zu der Frage gesagt...
Du kannst im Designer des UserControls den Unterkontrollen in den Eigenschaften Modifiers auf public setzen. Dann hast du von aussen Zugriff. Oder Du schreibst eben in Deinem UserControl Propertys über die Du das Control zugreifbar machst.
Du kannst aber auch die Property z.B. nur für den zu setzenden Text schreiben:
public string LabelText
{
get { return label1.Text; }
set { label1.Text = value; }
}
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
Original von MarsStein
Du kannst im Designer des UserControls den Unterkontrollen in den Eigenschaften Modifiers auf public setzen. Dann hast du von aussen Zugriff.
Ist nicht empfehlenswert so vorzugehen.... der Rest ist ok
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
@Programmierhans
Ist nicht empfehlenswert so vorzugehen.... der Rest ist ok
Da hast Du recht. Deshalb habe ich das Codebeispiel gebracht, das ist m. E. auch die beste Variante;
allerdings finde ich bei einem UserControl das nun nicht ganz so schlimm, die Unterkontrollen public zu machen -> das Control selbst wird ja normalerweise noch private instanziert.
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
Hallo BAUHAUS,
Bitte keine Kommentare wie "Das hatten wir schon. Benutze die Forumssuche".
Warum nicht? Wenn du fragen kannst, was du willst, dann können wir doch auch antworten, was wir wollen. Zumal es ja stimmt. Zum Beispiel liefert schon der vierte Treffer nach zugriff usercontrol erhellendes.
herbivore