У меня есть форма, в которой есть несколько кнопок. Я хотел бы разместить их ссылки в массиве. Возможно ли это с помощью foreach?Соберите элементы управления в форме C#
Я хочу, чтобы это сделать:
public Form1()
{
InitializeComponent();
Button[] all = new Button[5];
all[0] = button1;
all[1] = button2;
all[3] = button3;
all[4] = button4;
}
Я уже пробовал
int i=0;
foreach (Button p in Form1)
{
all[i]= p;
i++;
}
Но я не могу использовать Еогеасп на бланке. То же самое, если кнопки находятся в панели.
Что я могу сделать, чтобы быстро собрать все кнопки? Спасибо :)
WinForms? WebForms? ASP.NET MVC? WPF? SilverLight? –
Простейшим способом, вероятно, будет 'Form1.Controls.OfType
Вам нужно будет выполнить итерацию коллекции this.Controls. И скрестите пальцы, чтобы они были в том порядке, в котором вы хотите. Ясно, что нет ничего плохого в том, чтобы делать это явно. Используйте синтаксис инициализатора, чтобы сделать его более конденсированным. И объявите переменную правильно, она бесполезна как локальная переменная вашего конструктора. –