簡體   English   中英

從WinForm中的列表框中刪除項目

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM