[英]Removing an item from listbox in winform
我正在使用VS2010,C#、. Net 4.0和WinFormApplication。
我有一個從數據源填充的列表框。 我想在雙擊它們時一次刪除它們。
我在某處讀到,如果我從數據源填充列表框,則無法刪除任何項目。 這是真的? 如果沒有,那么我該如何刪除單個物品?
我嘗試了以下方法:
listbox1.Items.Remove(listbox1.SelectedIndex);
listbox1.Items.Remove(listbox1.SelectedIndex);
lbTableColumns.Items.Remove(lbTableColumns.SelectedItem);
導致以下錯誤:
錯誤:設置了DataSource屬性后,無法修改項目集合。
使用DataBinding
,不能像錯誤狀態一樣從ListBox
刪除項目。 如果對象在DataSource
更改但已從演示文稿中刪除,將會發生什么情況?
如果您正在使用數據源,則需要從數據源本身中刪除對象。 嘗試這樣的事情:
IList<MyObj> myList = new List<MyObj>();
private void DataBind()
{
myListBox.BeginUpdate();
myListBox.DataSource = myList;
myListBox.EndUpdate();
}
private void OnMyListBoxItemDoubleClicked(object sender, EventArgs e)
{
myList.RemoveAt(myListBox.SelectedIndex);
DataBind();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.