Inizializza array multidimensionale
-
05-07-2019 - |
Domanda
Checkbox[,] checkArray = new Checkbox[2, 3]{{checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
Ricevo un errore. Come lo inizializzo?
Soluzione
OK, penso di vedere cosa sta succedendo qui. Stai tentando di inizializzare un array a livello di classe usando questa sintassi e una delle caselle di controllo è anche una variabile a livello di classe? Ho ragione?
Non puoi farlo. A quel punto puoi usare solo variabili statiche. Devi spostare il codice init nel costruttore. A livello di classe, procedere come segue:
CheckBox[,] checkArray;
Quindi nel tuo costruttore:
public Form1()
{
InitializeComponent();
checkArray = new CheckBox[2, 3] { { checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
}
Altri suggerimenti
int [,] myArray; myArray = new int [,] {{1,2}, {3,4}, {5,6}, {7,8}};
Fa per me ....
Tony
L'unica cosa che vedo di sbagliato nel tuo codice è che è un CheckBox, non un Checkbox. Maiuscola 'B'.
Assicurati che tutte le variabili (checkbox24, checkboxPref1, checkbox23 e checkboxPref2) siano del tipo CheckBox
Inizializzato ogni elemento dell'array nel costruttore e ha funzionato. .