2009-03-05 5 views
1

Я пытаюсь динамически добавлять элементы в ToolStrip со следующим кодом:Обработка событий с динамической ToolStripItem

contextMenuStrip.Items.Add(string.Format("{0} kB/s", currSpeed), null, new EventHandler(Connection.SetSpeed)); 

Проблема заключается в том, что мне нужно передать параметр Connection.SetSpeed: currSpeed ​​(INT) , Как я могу это сделать?

Спасибо за ваше время. С уважением.

ответ

1

Вызов добавить вернет вам ToolStripItem, если установить это свойство Tag переменной currSpeed ​​вы должны быть в состоянии потянуть, что ToolStripItem из через аргумент отправителя в методе Connection.SetSpeed, когда элемент получает щелкнул ...

ToolStripItem item = contextMenuStrip.Items.Add(string.Format("{0} kB/s", currSpeed), null, new EventHandler(Connection.SetSpeed)); 
item.Tag = currSpeed; 

void Connection.SetSpeed (object sender, EventArgs e) 
{ 
    ToolStripItem item = (ToolStripItem)sender; 
    int currSpeed = (int)item.Tag; 

    // Do stuff... 
} 
+0

спасибо! это то, что я искал –

Смежные вопросы