Тип зависит от объектов, которые вы используете для заполнения отмеченного списка. Вы можете использовать DataTable
, используя следующий код:
var table = new DataTable();
table.Columns.Add("ID");
table.Columns.Add("NAME");
table.Rows.Add("1", "John Doe");
table.Rows.Add("2", "Jane Doe");
this.checkedListBox1.DataSource = table;
this.checkedListBox1.ValueMember = "ID";
this.checkedListBox1.DisplayMember = "NAME";
В этом случае, так как вы будете заполнять отмеченный список с помощью DataTable
, делая this.checkedListBox1.CheckedItems
, после проверки одного или нескольких элементов выведите ObjectCollection
, где каждый элемент в коллекции является экземпляром DataRowView
.
Для получения отмеченных предметов вы можете сделать:
var checkedIds = new List<string>();
foreach (var item in this.checkedListBox1.CheckedItems)
{
var dataRowView = (DataRowView)item;
checkedIds.Add((string)dataRowView["ID"]);
}
На заметку о том, что вы действительно должны улучшить свой коэффициент приема.