本帖最后由 amandag 于 2008-12-19 15:00:48 编辑

解决方案 »

  1.   

    你删除一个item后手动把按钮禁掉不就可以了?
      

  2.   

    Click只在单机listView的items时才会发生。用mousemove事件 private void listView1_MouseMove(object sender, MouseEventArgs e)
            {
                if (this.listView1.SelectedItems.Count == 0)
                    this.button1.Enabled = false;
                else
                    this.button1.Enabled = true;
            }
      

  3.   

    你选中一个item,click发生一次,你再点击空白处的时候,click不会发生,用MessageBox.show("d")试试就知道了
      

  4.   

    智能不是这个智能发的,你的代码只在单击listview时才判断是否禁止按钮,这是远远不够的。
    如果想要更加智能的判断,试试把判断事件注册到 SelectedIndexChanged 事件
      

  5.   

    SelectedIndexChanged 事件也一样。在从一个item移开鼠标点击listview的空白处时,SelectedIndex是不变的,和Click一样不会发生。
      

  6.   

    反对,SelectedIndexChanged会发生,click不会发生。 private void listView1_SelectedIndexChanged(object sender, EventArgs e)
            {
                if (listView1.SelectedItems.Count == 0)
                {
                    button1.Enabled = false;
                }
                else
                {
                    button1.Enabled = true;
                }
            }       
      

  7.   

    参考你楼上的代码,不用写click事件
      

  8.   

    有一个selectedIndexChanged事件,这就是在选定值才发生的,为什么不用呢?
    click肯定不行的
    在selectedIndexChanged事件里面判断选中的Selecteditems.Count>0&&SelectedItems!=null的时候才可用删除
    相反则不可用
      

  9.   

    你应该用这个事件listView1_ItemSelectionChanged
    你去试一下,行嘛?
     private void listView1_ItemSelectionChanged(object sender, EventArgs e)
            {
                if (listView1.SelectedItems.Count == 0)
                {
                    button1.Enabled = false;
                }
                else
                {
                    button1.Enabled = true;
                }
            }
      

  10.   

    删除事件中调用 IsSelListViewItem(); 即可
      

  11.   

    在判断的时候光用Listview.SlelectItemsCount是不行的,因为listview点击进去它会有默认的选择项,还要判断他的FocusedItem是否为空