C#,winform中,listview在虚拟模式中,怎么放置在CheckBox?是放置图片还是控件呢? 大家有知道的没

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#,winform中,listview在虚拟模式中,怎么放置在CheckBox?是放置图片还是控件呢? 大家有知道的没相关的知识,希望对你有一定的参考价值。

LIFEXX:请问你给的答案试过了吗?!
是有个CheckBox属性,但不是改成true那么简单
在listview的第一列放置复选框,这个复选框可以是控件形式的也可以是图片形式。
另外请注意我说的是在:listview的VirtualMode属性是true,也就是在虚拟下的。

参考技术A listview里面有个checkbox属性,改成true就可以了。 参考技术B 访问value撒 参考技术C 直接访问value

c# winform 中如何写事件监听 比如监听listview.items.count是不是发生变化

listview.ItemChanging+=ListviewItemChanging; //(这是一个 函数名 在这个函数中,你可以拦截 即将对 ListView 组的修改)
listview.ItemChanged+=ListviewItemChanged; //(这是一个 函数名 在这个函数中,你可以处理当 ListView 的组发生改变之后需要做的事情:比方说,重新统计某些变量)追问

怎么拦截?我的意思是比如我对listview插入或者删除一条数据时,会自动触发我自定义的事件,执行事件里面的代码。就像点击一个button后会执行button_click事件中的代码一样。我现在是写了事件,但是进行插入或者删除时,我定义的事件里的代码并没有执行。

追答

选中 ListView ,在左边的 “属性” 框中找 ItemChanging ItemChanged 事件, 双击这两个事件,就会 有 这两个事件的 函数体;

在这两个函数体中写代码;
ItemChanging 中理论上应该有 个参数 e
e.Cancel =true; 插入 或者 删除操作就会被中止!
_____________________________________________________

追问

我找到了ItemChanging事件,并在方法里写了MessageBox.Show("succeed");但是对listview插入数据的时候,并没有执行。那个e.Cancel点不出来,我写e.后面只出来Equals,GetHashCode,GetType,GetToString,

追答

那就是 试试 CollectionChanged 和 CollectionChanging 事件:ItemChanged 和 ItemChanging 事件,我自己都没有找出来;

不是给你发了一个截图的么?

只有 Changing 事件才有 e.Cancel

参考技术A 没有听懂你的意思,如果就像看看每时每刻有没有变化,就可以用Timer组件来实现就可以了。

以上是关于C#,winform中,listview在虚拟模式中,怎么放置在CheckBox?是放置图片还是控件呢? 大家有知道的没的主要内容,如果未能解决你的问题,请参考以下文章

C#实战:WinForm控件ListView快速上手

c# winform中listview的item点击事件

C# WINFORM ListView用法详解(转)

c# winform 点击按钮 将指定路径下的文件夹显示到listview中,并且listview中 文件夹可打开继续选择文件

C# winform编程 开发环境VS2010 listview控件问题

C# winform项目中ListView控件使用CheckBoxes属性实现单选功能