Inicializar matriz multidimensional
-
05-07-2019 - |
Pergunta
Checkbox[,] checkArray = new Checkbox[2, 3]{{checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
Estou recebendo um erro.Como faço para inicializá-lo?
Solução
OK, acho que vejo o que está acontecendo aqui.Você está tentando inicializar um array em nível de classe usando esta sintaxe, e uma das caixas de seleção também é uma variável em nível de classe?Estou correcto?
Você não pode fazer isso.Você só pode usar variáveis estáticas nesse ponto.Você precisa mover o código init para o construtor.No nível da classe, faça o seguinte:
CheckBox[,] checkArray;
Então no seu construtor:
public Form1()
{
InitializeComponent();
checkArray = new CheckBox[2, 3] { { checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
}
Outras dicas
int [,] MyArray; myArray = new int [,] {{1,2}, {3,4}, {5,6}, {7,8}};
Faz por mim ....
Tony
A única coisa que vejo de errado com o seu código é que é uma caixa de seleção, não uma caixa de seleção. Capital 'B'.
Certifique-se de que todas as suas variáveis (checkbox24, checkboxPref1, checkbox23 e checkboxPref2) sejam do tipo CheckBox
Inicializou cada elemento da matriz no construtor e funcionou. .