GUI ではなくメイン ソース ファイルで宣言されているコントロールを含むイベント処理関数を記述する場合、プログラマはスコープの制限を回避するにはどうすればよいでしょうか?
この問題を解決するために、Form1_Load() の代わりにそのようなコントロールをグローバル スコープで宣言することは「許容」されますか?
private void Form1_Load(object sender, EventArgs e)
{
ComboBox t = new ComboBox();
Button b = new Button();
b.OnClick += b_OnClick;
}
private void b_OnClick(object sender, OnClickEventArgs e)
{
s.Add("Hello s!"); // The object s is a ComboBox control generated in the Designer GUI
t.Add("Hello t!");
}
// Line 10 is valid.
// Line 11 is invaid because t does not exist in the current scope. How might one work around this issue?