繁体   English   中英

C#Windows窗体Listview所选项目

[英]C# Windows forms Listview selected item

我在Windows表单中有一个由SQL数据库填充的listview。 我有一个按钮,可以在选择记录时将其删除,并且工作正常。 但是,如果没有选定的项目,并且我单击删除按钮,则会出现错误。 所以我添加了一个消息框和一个条件,但始终获取- 对象引用未设置为对象的实例。

所以我如何检查列表视图中是否有选定的项目,以便它输入If?

谢谢

private void btnDelete_Click(object sender, EventArgs e)
    {

        bool b = this.lvBrands.FocusedItem.Checked;

        if (b == false)
        {
            MessageBox.Show("You must select a brand .", "Brand Select Error",
            MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
        }
        else
        {
            string sID = this.lvBrands.FocusedItem.Text;
            deleteBrand(sID);
            clearBrand(); 

        }    

你可以做

if(lvBrands.SelectedItems.Count > 0)
{
//you have something selected
}

在尝试引用它之前,您需要检查FocusedElement是否不为null。

 bool b = false;
 if(this.lvBrands.FocusedItem != null)
 {
      b = this.lvBrands.FocusedItem.Checked;
 }

但是,正如@bobek指出的那样,如果要查找选定的项目,则应使用SelectedItem而不是FocusedItem属性。 只是使用SelectedItem ,代码是相同的。

暂无
暂无

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

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