Инициализировать многомерный массив
-
05-07-2019 - |
Вопрос
Checkbox[,] checkArray = new Checkbox[2, 3]{{checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
Я получаю сообщение об ошибке.Как мне его инициализировать?
Решение
Хорошо, я думаю, что вижу, что здесь происходит. Вы пытаетесь инициализировать массив на уровне класса, используя этот синтаксис, и один из флажков также является переменной уровня класса? Я прав? Р>
Ты не можешь этого сделать. Вы можете использовать только статические переменные в этой точке. Вам нужно переместить код инициализации в конструктор. На уровне класса сделайте это:
CheckBox[,] checkArray;
Тогда в вашем конструкторе:
public Form1()
{
InitializeComponent();
checkArray = new CheckBox[2, 3] { { checkbox24,checkboxPref1,null}, {checkbox23,checkboxPref2,null}};
}
Другие советы
int[,] Мой массив;myArray = новый int[,] {{1,2}, {3,4}, {5,6}, {7,8}};
Делает для меня....
Тони
Единственное, что я вижу неправильно в вашем коде, это то, что это CheckBox, а не Checkbox. Столица "B".
Убедитесь, что все ваши переменные (checkbox24, checkboxPref1, checkbox23 и checkboxPref2) имеют тип CheckBox
Инициализировал каждый элемент массива в конструкторе, и это сработало. . Р>