Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
public void CopyToListControl(ListControl ListControlElement, List<string> v)
{
if (ListControlElement is ComboBox)
{
((ComboBox)ListControlElement).Items.Clear();
for (int i = 0; i < v.Count; i++) ((ComboBox)ListControlElement).Items.Add(v);
}
if (ListControlElement is ListBox)
{
((ListBox)ListControlElement).Items.Clear();
for (int i = 0; i < v.Count; i++) ((ListBox)ListControlElement).Items.Add(v);
}
if (ListControlElement is CheckedListBox)
{
((CheckedListBox)ListControlElement).Items.Clear();
for (int i = 0; i < v.Count; i++) ((CheckedListBox)ListControlElement).Items.Add(v);
}
}
Функция нового класса для подключения к форме. На форме может быть любой из 3 списочных элементов. Подводим к общему классу ListControl
Но так писать нельзя:
public void CopyToListControl(ListControl ListControlElement, List<string> v)
{
ListControlElement.Items.Clear();
for (int i = 0; i < v.Count; i++) ListControlElement.Items.Add(v);
}
а дальше в коде будет несколько методов по тому же принципу, по 3 if в каждой функции (бла-бла-бла is бла-бла-бла)
+ ещё приведение типа каждый раз
А еще у вас добавление элементов ВИЧ-положительно
((dynamic)ListControlElement).Items.Clea r();
А так же при using Microsoft.CSharp
Спасибо!
Вообще какая-то ебота с архитектурой windows form