Есть вау\y, чтобы ускорить этот процесс путем изменения кодировки?
У меня есть форма с flowlayoutpanel, которая содержит 25 кнопок.
Основываясь на информации в excelsheet (с помощью созданной функции readCell я читаю информацию в конкретной ячейке) Я могу сделать кнопки видимыми на форме или скрыть их. Ниже приведен код (без информации о пути). Мне было интересно, есть ли способ ускорить этот код, поскольку для загрузки формы требуется некоторое время, примерно 20 секунд?
частный недействительными LoadForm()
{
Excel excel = new Excel(@"некоторый путь к документу excel", 1);
for (int i = 1; i <= 25; i++)
{
foreach (управление c в flowLayoutPanel1.Управления)
{
Кнопка b = c как кнопка;
если (B != нуль &амп;&амп; в формате Excel.ReadCell(я, 10) == "Ан" и усилитель; & программа Excel.ReadCell(я, 11) == Б.Название)
{
b.видимый = истинный;
}
если (B != нуль &амп;&амп; в формате Excel.ReadCell(я, 10) == "ПИФ" и усилитель; & программа Excel.ReadCell(я, 11) == Б.Название)
{
b.видимый = ложный;
}
}
}
превосходить.Закрывать();
}
частный недействительными методе form1_load(объект отправителя, EventArgs в электронной)
{
LoadForm();
}
Что я уже пробовал:
Код работает нормально, но загрузка формы занимает некоторое время. Мне просто интересно, есть ли более умный способ кодировать эту часть. Когда я хочу добавить больше кнопок, он действительно замедляется.
Richard MacCutchan
Вы читаете отдельные ячейки каждый раз, поэтому это займет больше времени, чем если бы вы читали весь лист или диапазон, а затем проверяли значения в памяти.