Я создал 4x4 TableLayoutPanel
, заполненный Labels
. Я хотел был бы изменить BackColor
одного случайно Label
на Button_Click
. Я не знаю, как это сделать. Вот то, что я до сих пор:Изменение цвета фона случайной метки
public partial class Form1 : Form
{
Label[,] labelki = new Label[4, 4];
Random los = new Random();
Label wylosowanyLabel = null;
public Form1()
{
InitializeComponent();
}
private void ZmienKolor()
{
int i = los.Next(1, 4);
int j = los.Next(1, 4);
wylosowanyLabel = labelki[i, j];
wylosowanyLabel.BackColor = Color.Red; //I get a NullReferenceException here
}
private void btnStart_Click(object sender, EventArgs e)
{
timer1.Start();
ZmienKolor();
}
}
Что ваша проблема именно? Вы получаете сообщение об ошибке? Вы должны быть более конкретными в своей проблеме. –
Вы должны прикрепить обработчик к событию нажатия кнопки. Добавьте 'buttonname.Click + = (s, o) => {ChangeColor()};' после 'InitializeComponenet();' в вашем конструкторе форм. – dotctor
Код, который вы отправили, никогда не заполняет массив 'labelki', поэтому вы получаете исключение для ссылки на null. –