Добавление элементов управления в массив кнопок c # - PullRequest
0 голосов
/ 09 июня 2011

Я нахожусь в середине проекта и мне нужно добавить функции в массив кнопок, чтобы каждая кнопка запускала эту функцию при нажатии. Я создал массив, который также использует структуру для всех свойств во время инициализации. Я не могу жестко кодировать функции, потому что предыдущая функция устанавливает размер и порядок массива кнопок. Я посмотрел в сети и не могу найти конкретный ответ, который имеет отношение к делу. Я довольно новичок в программировании (на втором курсе), поэтому извините, если моя терминология только что из колледжа. Любая помощь / совет будет принята с благодарностью, спасибо.

Ответы [ 3 ]

1 голос
/ 09 июня 2011

Напишите ваш общий обработчик событий как следует с правильными параметрами.

private void MyCommonFunctionForAllButtons(object sender, System.EventArgs e)
{
    //Write the logic you want to execute once any button is pressed.
}

Назначьте один и тот же обработчик событий для всех кнопок в вашем массиве.

foreach( Button button in buttonArray ) 
{
    button.Click += MyCommonFunctionForAllButtons;
}
0 голосов
/ 09 июня 2011

Примерно так:

Button[] buttons = ... ;
for (int i=0; i < buttons.Length; i++)
{
    Button b = buttons[i];
    b.TabIndex = i;
      ... set other properties here, as desired....
    b.Click += new System.EventHandler(clickHandler[i]);
}

Если это не то, о чем вы думали, возможно, вы могли бы показать некоторый код, чтобы проиллюстрировать то, что вы хотите.

0 голосов
/ 09 июня 2011

Вам нужно перебрать список кнопок и назначить обработчик onclick?

foreach( Button button in buttons ) {
    button.Click += methodName;
}

Или в вашем вопросе было что-то еще?

...