4

我需要知道每个元素的类型是什么CheckedListBox.Items?是ListViewItemObject还是什么?

我还想知道如何将 a 绑定DataTable到 aCheckedListBox并在 windows 窗体中设置每个项目 ID 和文本?

4

1 回答 1

4

类型取决于您用来填充选中列表框的对象。您可以使用DataTable以下代码来使用 a:

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";

在这种情况下,因为您将在检查一个或多个项目后使用 do 填充选中的列表框,所以DataTablethis.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"]);
}

另一方面,你应该真正提高你的接受率。

于 2011-02-05T13:04:26.123 回答