есть программа, в которой в участке кода я пробегаюсь по контролам последовательно, доставая их свойста и передавая их в функцию RefreshExcelWorkbook(@ctr2.textBoxFileDirName.Text, txtTextName, txtNewName);
но этот сепсок у меня большой, и хотелось бы как-то распаралелить, т.е. обращаться к этой функции сразу нескольким контролам, как мне лучше это сделать ?
- Код: Выделить всё
foreach (Control control in flowLayoutPanel1.Controls)
{
/*Если есть пользовательский контрол, то достаю св-ва
и если нет галки "Новое имя", то беру из textBoxFileNewName, иначе пусто
*/
UserControlFile ctr2 = control as UserControlFile;
if (ctr2 != null)
{
FileInfo fileinfo = new FileInfo(ctr2.textBoxFileDirName.Text);
FileDir = fileinfo.DirectoryName;
if (ctr2.checkBoxNewName.Checked == true)
{
txtNewName = ctr2.textBoxFileNewName.Text;
txtTextName = "";
}
else
{
txtTextName = fileinfo.Name;
txtNewName = "";
}
//MessageBox.Show(txtTextName+txtNewName);
/*
Передаю фоновому поток функцию обновления с параметрами
workbookPath - полный путь без имени файла
txtNewName - новое имя, если есть
*/
RefreshExcelWorkbook(@ctr2.textBoxFileDirName.Text, txtTextName, txtNewName);
/*
Если нет галки "Новое имя", то не архивируем
иначе запускаем функцию архивирования файла
*/
if (txtTextName != "")
{
funcPackFile(txtTextName);
}
else
{
funcPackFile(txtNewName);
}
}
}
у меня пока мозг направлен в сторону делегатов, но я к сожаленью плохо понял как это сделать или есть другой способ ???