|
あくまで一例。鵜呑みにするべからず。
--- Form2.cs : ボタンがふたつあるます ---
public partial class Form2 : Form {
public Form2() { InitializeComponent(); }
// button1にイベントハンドラ追加
public void setAction1(EventHandler eh) { button1.Click += eh; }
// button2にイベントハンドラ追加
public void setAction2(EventHandler eh) { button2.Click += eh; }
}
--- Form1.cs : ボタンとテキストボックス各1 ---
public partial class Form1 : Form {
public Form1() { InitializeComponent(); }
private int count = 0;
// ボタンが押されたらForm2をモーダルに開く
private void button1_Click(object sender, EventArgs e)
{
Form2 form = new Form2();
form.setAction1(increment); // ハンドラその1
form.setAction2(decrement); // ハンドラその2
form.ShowDialog();
}
private void increment(object sender, EventArgs e)
{ textBox1.Text = (++count).ToString(); }
private void decrement(object sender, EventArgs e)
{ textBox1.Text = (--count).ToString(); }
}
|