я сделал так
//add a delegate
public delegate void ItemClickedHandler(object sender, ItemClickedEventArgs e);
// add an event of the delegate type
public event ItemClickedHandler ItemClicked;
// не знаю, зачем весь этот геморрой - можно данные передавать в статическом объекте ну да ладно
public class ItemClickedEventArgs : System.EventArgs
{
// add local member variables to hold object
private Test test;
// class constructor
public ItemClickedEventArgs(Test _test)
{
this.test = _test;
}
// Properties - Viewable by each listener
public Test TestInstance
{
get { return test; }
}
}
а вот тут я получаю эксепшен, ругается что ItemClicked – null.
private void listViewSteps_Click(object sender, EventArgs e)
{
if (listViewSteps.SelectedItems.Count > 1)
return;
Test selected_test = (listViewSteps.SelectedItems[0].Tag as Test);
if (selected_test == null)
return;
SetTabControl(tabControlSettings, selected_test);
listViewSteps.LabelEdit = true;
// instance the event args and pass a value
ItemClickedEventArgs args = new ItemClickedEventArgs(selected_test);
// raise the event with the updated arguments
ItemClicked(this, args);
this.Dispose();
}
как мне инициализировать ItemClicked?