我想实现c# winform中 listview某一列(不是第一列)可编辑,当点击某一单元格时出现对话框来编辑内容,编辑后点击确定保存,或者是直接在单元格中编辑也行。

解决方案 »

  1.   

    在这列的单元格的点击事件里处理。弹出编辑窗口。showdialog方式。
    处理完了把输入的值反映上去就得了。
      

  2.   

    你需要做的是首先判断一下你点击的是哪一行
    ListViewItem lvitem = this.listView1.GetItemAt(e.X, e.Y);
    然后发送系统消息获取每一单元格的rect,
    intSendMessage = SendMessage(this.listView1.Handle, LVM_GETSUBITEMRECT, lvitem.Index, ref   myrect);
    之后判断是否鼠标的点击坐标是否在这一rect内,就可以获取你要的单元格了.