Entwickler-Ecke
WinForms - Status von Checkbox durch Arrayvariable angeben
Gooner - Mi 28.07.10 13:10
Titel: Status von Checkbox durch Arrayvariable angeben
Hallo!
Ich habe folgenden Befehl der natürlich so auch funktioniert:
this.checkBox1.CheckState = CheckState.Checked;
Ich lese den Status, also ob Checked oder Unchecked, aber aus einer Textdatei aus und speichere
mir den Status der verschiedenen Checkboxen in einem array.
D.h. array[0] ist z.B. Unchecked und array[1] ist Checked usw.
Jetzt würde ich gerne den Status von CheckState mit Hilfe meines array Inhalts angeben also:
this.checkBox1.CheckState = CheckState.array[1];
Wenn ich das so probiere, geht es nicht...
Ist das denn generell möglich und wenn ja wie?
LG
Gooner
Ralf Jansen - Mi 28.07.10 13:33
Wenn dein Array als Array von Checkstate (also als Checkstate[] array;) definiert ist sollte das eigentlich funktionieren.
C#-Quelltext
1: 2: 3: 4:
| CheckState[] array = new CheckState[10]; array[0] = CheckState.Checked;
checkBox1.CheckState = array[0]; |
Necaremus - Mi 28.07.10 16:40
warum arbeitest du nicht mit boolean?
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| private void CheckIt() { bool[] checks = LoadCheck(); List<CheckBox> cbs = LoadList();
for (int i = 0; i < cbs.Count; i++) cbs[i].Checked = checks[i]; } private bool[] LoadCheck() { return list; } private List<CheckBox> LoadList() { return list; } |
danielf - Mi 28.07.10 16:51
Also, das macht doch keinen Sinn :o
Die CheckBox ist ja nur zur Visualisierung eines Status einer Eigenschaft eines Objekts. Du solltest die Darstellungsform (in diesem Fall die CheckBox) mit den Daten (in diesem Fall true / false) trennen. Eventuell hat das Ding das du versuchst mithilfe von true/false zu beschreiben ja noch mehr Eigenschaften.
Speicher dir also einfach diese Objekte und beim Laden setzt du die Werte entsprechend.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!