在.NET框架的Windows Forms應(yīng)用程序中,可以使用CheckedListBox
控件來(lái)實(shí)現(xiàn)多選功能
CheckedListBox
控件從工具箱添加到窗體上。CheckedListBox
控件添加項(xiàng)目??梢酝ㄟ^(guò)代碼或設(shè)計(jì)器來(lái)實(shí)現(xiàn)。以下是通過(guò)代碼添加項(xiàng)目的示例:checkedListBox1.Items.Add("Item 1");
checkedListBox1.Items.Add("Item 2");
checkedListBox1.Items.Add("Item 3");
CheckOnClick
屬性為true
,這樣用戶就可以通過(guò)單擊項(xiàng)目來(lái)選中或取消選中復(fù)選框??梢栽谠O(shè)計(jì)器中設(shè)置此屬性,也可以通過(guò)代碼實(shí)現(xiàn):checkedListBox1.CheckOnClick = true;
ItemCheck
事件,當(dāng)用戶選中或取消選中某個(gè)項(xiàng)目時(shí),會(huì)觸發(fā)此事件。可以在此事件中執(zhí)行相應(yīng)的操作,例如更新其他控件的狀態(tài)或保存用戶的選擇。以下是一個(gè)簡(jiǎn)單的示例,當(dāng)用戶選中或取消選中某個(gè)項(xiàng)目時(shí),會(huì)在控制臺(tái)上輸出相應(yīng)的信息:private void checkedListBox1_ItemCheck(object sender, ItemCheckEventArgs e)
{
if (e.NewValue == CheckState.Checked)
{
Console.WriteLine($"Item {checkedListBox1.Items[e.Index]} is checked.");
}
else
{
Console.WriteLine($"Item {checkedListBox1.Items[e.Index]} is unchecked.");
}
}
CheckedListBox
控件的CheckedItems
屬性。以下是一個(gè)示例,當(dāng)用戶點(diǎn)擊按鈕時(shí),會(huì)在消息框中顯示所有選中的項(xiàng)目:private void button1_Click(object sender, EventArgs e)
{
StringBuilder selectedItems = new StringBuilder();
foreach (var item in checkedListBox1.CheckedItems)
{
selectedItems.AppendLine(item.ToString());
}
MessageBox.Show("Selected items:" + Environment.NewLine + selectedItems.ToString());
}
通過(guò)以上步驟,你就可以在CheckedListBox
控件中實(shí)現(xiàn)多選功能了。