[英]Show ValueMember of a CheckedListBox in c#
我有一個綁定到表的CheckedListBox。我想從我檢查的列表中獲取任何項目的ValueMember.Presenting我正在遍歷列表的所有檢查項目以顯示ValueMember,結果這向我顯示了幾個我不想要的消息框。 我想在任何情況下如果我檢查任何項目,那么它應該向我顯示其對應的ValueMember。我當前的代碼是
foreach (DataRowView view in clbAnnually.CheckedItems)
{
MessageBox.Show(view[clbAnnually.ValueMember].ToString());
}
我曾在SO中尋找類似的問題,但他們沒有解決我的問題。 請建議代碼。
使用CheckedListBox.ItemCheck事件。 當用戶檢查項目並提供有關已檢查項目的所有信息時,將引發該事件。
DataTable table = new DataTable();
table.Columns.Add("ID", typeof(int));
table.Columns.Add("Name");
table.Rows.Add(0, "Name 0");
table.Rows.Add(1, "Name 1");
table.Rows.Add(2, "Name 2");
checkedListBox1.DataSource = table;
checkedListBox1.DisplayMember = "Name";
checkedListBox1.ValueMember = "ID";
checkedListBox1.ItemCheck += CheckedListBox1_ItemCheck;
1。
private void CheckedListBox1_ItemCheck(object sender, ItemCheckEventArgs e) {
CheckedListBox clb = (CheckedListBox)sender;
DataRowView row = (DataRowView)clb.Items[e.Index];
MessageBox.Show(row[clb.ValueMember].ToString());
}
2。
private void CheckedListBox1_ItemCheck(object sender, ItemCheckEventArgs e) {
CheckedListBox clb = (CheckedListBox)sender;
MessageBox.Show(clb.SelectedValue.ToString());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.