私は 2 つのクラスを持っている立場にあり、1 つにはボタンのイベント ハンドラーがあり、ボタン以外のクラスを変更するには、もう 1 つのクラスでそのイベント ハンドラーをリッスンできる必要があります。このタイプのシナリオの経験があまりないため、どこから始めればよいかよくわかりません。
質問する
65 次
1 に答える
0
この2つのクラスの例を次に示します(質問を正しく理解した場合)。
class Form
{
Button _button1, _button2;
public Form()
{
_button1 = new Button("button1");
_button2 = new Button("button2");
_button1.Click += _button_Click;
_button2.Click += _button_Click;
}
void _button_Click(object sender, EventArgs e)
{
Button button = (Button)sender;
Console.WriteLine(button.Name);
}
public void Click1()
{
_button1.FireEvent();
}
public void Click2()
{
_button2.FireEvent();
}
}
class Button
{
public event EventHandler Click;
public string Name;
public Button(string name)
{
Name = name;
}
public void FireEvent()
{
Click(this, new EventArgs());
}
}
使用法:
Form f = new Form();
f.Click1();
f.Click2();
于 2013-11-07T23:05:30.927 に答える