Я пытаюсь создать CheckedListBox во время выполнения из данных, находящихся в таблице базы данных.
Данные в таблице, например,
Kern
Formax
Buhrs
для каждой строки в таблице Iхочу, чтобы код создал новый CheckedListBox с именем строки.
После создания CheckedListBox я хочу заполнить его из другой таблицы, содержащей другие данные.
Как только клиентсделано с выбором данных в CheckedListBox. Я хочу прочитать все проверенные значения в CheckedListBox и сохранить его в массив.
Моя проблема заключается в создании CheckedListBox и доступе к данным, как только клиент нажимаетготово.
Я очень новичок в создании элементов управления во время выполнения.
Заранее спасибо:)
Я решил эту проблему путем создания массива списков проверенных списков и созданиякаждый проверенный список с количеством строк в моей таблице и заполнением проверенных списков данными в таблице.Перебирая все проверенные списки, я получаю все проверенные значения и сохраняю их в другую таблицу.
private CheckedListBox[] Machines;
Machines = new CheckedListBox[test.Length];
int iLocation = 3;
for (int i = 0; i < Machines.Length; i++)
{
Machines[i] = new CheckedListBox();
Machines[i].Name = "clb" + test[i].ToString();
Machines[i].Location = new Point(iLocation, 6);
Machines[i].Size = new Size(120, 139);
iLocation += Machines[i].Width + 6;
this.Controls.Add(Machines[i]);
}
Machines[2].Items.Add("Hello");
Machines[2].Items.Add("Goodbye");
Этот код предназначен для доступа к данным в поле проверяемого списка
ArrayList arrCheckedItems = new ArrayList();
CheckedListBox.CheckedItemCollection objCheckedItem = Machines[2].CheckedItems;
for (int i = 0; i < objCheckedItem.Count; i++)
{
arrCheckedItems.Add(objCheckedItem[i]);
}
string[] srtArray = arrCheckedItems.ToArray(Type.GetType("System.String")) as string[];
int iMachines = srtArray.Count();
for (int i = 0; i < iMachines; i++)
{
MessageBox.Show(srtArray[i].ToString());
}