Initialisieren Sie das mehrdimensionale Array
-
05-07-2019 - |
Frage
Checkbox[,] checkArray = new Checkbox[2, 3]{{checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
Ich bekomme Fehler. Wie initialisiere ich es?
Lösung
Ok, ich glaube, ich sehe, was hier passiert. Sie versuchen, ein Array auf einer Klassenebene mit dieser Syntax zu initialisieren, und eine der Kontrollkästchen ist ebenfalls eine Variable der Klassenebene? Hab ich recht?
Das kannst du nicht. Zu diesem Zeitpunkt können Sie nur statische Variablen verwenden. Sie müssen den Init -Code in den Konstruktor verschieben. Auf der Klassenebene tun Sie dies:
CheckBox[,] checkArray;
Dann in Ihrem Konstruktor:
public Form1()
{
InitializeComponent();
checkArray = new CheckBox[2, 3] { { checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
}
Andere Tipps
int [,] myarray; myarray = new int [,] {{1,2}, {3,4}, {5,6}, {7,8}};
Tut für mich ....
Tony
Das einzige, was ich mit Ihrem Code falsch sehe, ist, dass es sich um ein Kontrollkästchen handelt, kein Kontrollkästchen. Kapital 'B'.
Stellen Sie sicher
Initialisierte jedes Array -Element im Konstruktor und es funktionierte. .