Передать аргумент в обработчик события - C#
Формулировка задачи:
Программно создаю несколько кнопок, и в код каждой нужно отправить аргумент, как это сделать?
примерно такой код
хочу сделать что-то вроде
При таких попытках говорит что нет подходящего перегруженного метода(
//Обработчик события private void btnNewTab_Click(object sender, EventArgs e) { /--.code--/} //Создание кнопки button.Click += new System.EventHandler(this.btnNewTab_Click);
private void btnNewTab_Click(object sender, EventArgs e, string data){ /--.code--/} button.Click += new System.EventHandler(this.btnNewTab_Click(data));
Решено: передал нужные данные через sender.tag
Решение задачи: «Передать аргумент в обработчик события»
textual
Листинг программы
Button button = new Button(); button.Text = "My button"; button.Location = new Point(10, 10); button.Size = new Size(75, 23); button.Tag = "Здесь строка с данными"; button.Click += ButtonClick; private void ButtonClick(object sender, EventArgs e) { Button btn = sender as Button; string data = (string)btn.Tag; MessageBox.Show("Button extra data: " + data); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д