在WPF或Windows Forms中,實現ListBox的多選可以通過以下步驟來完成:
設置ListBox的SelectionMode
屬性:
在XAML中,將ListBox的SelectionMode
屬性設置為Multiple
。
<ListBox x:Name="myListBox" SelectionMode="Multiple">
<!-- 列表項 -->
</ListBox>
或者在代碼中:
myListBox.SelectionMode = SelectionMode.Multiple;
處理ListBox的選擇變化事件:
你可以使用SelectionChanged
事件來檢測用戶何時選擇了或取消選擇了列表項。
myListBox.SelectionChanged += MyListBox_SelectionChanged;
private void MyListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
// 處理選擇變化
}
設置ListBox的SelectionMode
屬性:
在設計器中,將ListBox的SelectionMode
屬性設置為MultiSelect
。
或者在代碼中:
myListBox.SelectionMode = System.Windows.Forms.SelectionMode.MultiSelect;
處理ListBox的選擇變化事件:
你可以使用SelectedIndexChanged
事件來檢測用戶何時選擇了或取消選擇了列表項。但是,這個事件不會告訴你具體哪些項目被選擇了,除非你維護一個被選擇項目的列表。
myListBox.SelectedIndexChanged += MyListBox_SelectedIndexChanged;
private void MyListBox_SelectedIndexChanged(object sender, EventArgs e)
{
// 處理選擇變化
}
如果你需要知道哪些項目被選擇了,你可以使用SelectedItems
屬性,它返回一個包含所有選定項目的IList
集合。
private void MyListBox_SelectedIndexChanged(object sender, EventArgs e)
{
foreach (var item in myListBox.SelectedItems)
{
// 處理每個選定的項目
}
}
以上就是在WPF和Windows Forms中實現ListBox多選的基本方法。