Как программист может обойти ограничения области действия при написании функций обработки событий, включающих элементы управления, которые объявлены не через графический интерфейс, а в основном исходном файле?
Является ли «приемлемым» объявление таких элементов управления в глобальной области видимости вместо 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?
Controls
вашей формы, однако, чтобы сослаться на один из ваших элементов управления, у вас нет другого способа, кроме как найти его вControls
вашей формы. Это не очень удобно. - person King King   schedule 22.06.2013