繁体   English   中英

从列表中删除所选项目

[英]Removing the selected Item from the list

基本上,这是一个联系人列表,从列表框中选择联系人,然后单击“删除”按钮,将其从列表中删除。

        private void btnRmv_Click(object sender, EventArgs e)
    {

        try{

        listBox.Items.Remove(listBox.SelectedItems[0]);

        people.RemoveAt(listBox.SelectedIndex);

        }
        catch { }
    }

这段代码似乎从列表框中删除了联系人,但是如果我保存程序并再次打开它,则联系人又回到了那里。 我将所有联系人保存在Xml文件中。 该程序在退出时自动保存,并且具有手动保存按钮。

谢谢

尝试先从“人员”中删除,然后从列表框中删除它,否则将所选索引作为参数。 示例代码粘贴在下面

    try
    {

    int _SeletedIndex = listBox.SelectedIndex();

    listBox.Items.Remove(listBox.SelectedItems[0]);

    people.RemoveAt(_SeletedIndex);

    }
    catch { }

您没有显示代码的保存位置,但我想缺少一个联系人-可能是您要删除的联系人下面的那个联系人?

由于使用的是SelectedIndex之后从列表框中删除该项目,因此必须选择其他一些项目。

尝试颠倒顺序:

private void btnRmv_Click(object sender, EventArgs e)
{
    try
    {
        people.RemoveAt(listBox.SelectedIndex);
        listBox.Items.Remove(listBox.SelectedItems[0]);
    }
    catch { }
}

首先要删除selected item ,所以丢失选定的索引,并且列表people没有任何项目被删除。

让我们重新排列行:

people.RemoveAt(listBox.SelectedIndex);

listBox.Items.Remove(listBox.SelectedItems[0]);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM