C# Zugriff auf CheckBox(es)

Gast #1855814
Hallo zusammen,

in einer Form habe ich um die 100 CheckBoxes ((bool) Parameter einer 
Steuerung).
Wie kann ich in einer Schleife auf die CheckBoxes zugreifen (lesen, 
schreiben)?
Geht es irgendwie in der Art:
" string name = "checkBox1";
CheckBox myCheckBox = New CheckBox(name)?"
#1855872
Joa, so was gibts.

Du kannst in Form.Controls (Liste mit allen Controls in der Form) nach 
den checkboxen suchen.
1
CheckBox activeBox = (CheckBox)this.Controls["CheckBox1"];

Gibt die die Checkbox mit dem Namen "CheckBox1" zurück. Mit activeBox 
kannst du dann alles machen, was du willst.

Vergiss aber nicht das try und catch um Fehler beim Zugriff abzufangen. 
Alternativ kannst du natürlich mit
1
CheckBox activeBox;
2
if (this.Controls.ContainsKey("CheckBox1"))
3
{
4
    activeBox = (CheckBox)this.Controls["CheckBox1"];   // Gibt trotzdem einen Fehler, wenn das Control mit dem Namen CheckBox1 keine Checkbox ist.
5
}
6
else
7
{
8
    return;
9
}

sicherstellen, dass nur vorhandene Controls verwendet werden.

Bei den Beispielen bezieht sich "this" auf das aktuelle Formular. 
Wichtig ist, dass du, wenn die Boxen nicht direkt auf dem Form liegen, 
das übergeordnete Steuerelement nimmst. z.B. groupBox1.Controls

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.