c# – .NET:ListView蓝调?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – .NET:ListView蓝调?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2241字,纯文字阅读大概需要4分钟。
内容图文
![c# – .NET:ListView蓝调?](/upload/InfoBanner/zyjiaocheng/768/efb6e821c263492da432eedd55327573.jpg)
选择计数,.SelectedItems.Count,在何时不会改变
对于Items中的项目,Selected属性设置为true
ListView的集合.
例:
lvPept.SelectedItems.Clear()
lvPept.Items(6).Selected = True
Dim newLen As Integer = lvPept.SelectedItems.Count
lvPept是一个ListView,包含10个元素.
newLen预计为1,但问题发生时为0
并且不会触发SelectedIndexChanged事件.同
其他数据集如预期的那样是1和
SelectedIndexChanged事件被触发.
在什么样的环境或什么样的状态下我们可以参与其中
为了这个发生? BeginUpdate()/ EndUpdate()不是
与lvPept一起使用.
背景:
我试图找出我的一个用户的问题
开源.NET应用程序,MSQuant
(http://msquant.sourceforge.net/)遇到了.
我已经没有想到可能是什么原因
问题.
这个问题是可以重现的,我可以在我的网站上重现它
开发环境,Visual Studio 2008.似乎是
独立于Windows版本(Windows 2000 / Windows XP 32位/
Windows XP 64位),.NET运行时版本(2.0 / 3.5)和Visual
Studio版(2005/2008).
其他上下文:应用程序是用VB.NET编写的
C#并且是Windows窗体应用程序.的源代码
有问题的课程是在http://shrinkster.com/14bg年
最初生成ListView所在的表单类
通过最早的Visual Studio官方版本之一
支持.NET,ca. 2002年.
更新1:因为我有一个工作案例和一个破案我
比较了lvPept的内容.唯一的区别
属性“Handle”,“MousePosition”和“TopItem”除外
(因为它是具有不同肽的不同蛋白质)是属性
“创建”.破碎的案子是假的.这说得通
部分构造的对象无法正常运行,
但它怎么会发生?
更新2:属性“已创建”为假,结果是一个
良好的领导.我认为真正的问题是这样做
施工时间而不是形式加载时间.我现在有了
为“已创建”,重构和更改的属性添加了ASSERT
在表单加载时发生的所有操作.它现在有效
正如预期的那样,有问题的用户得到了新的
应用程序的版本.
自应用程序以来,旧的糟糕方式就在那里
在2002年成立.我只是想知道是否有专家可以
重点介绍为什么它99.9%的时间只能工作
在少数情况下失败并且可重复.
解决方法:
这是一个有趣的.
我认为唯一可以实现这一点的是ListView没有意识到ListItem已经改变了它的“Selected”值,因此没有更新它所选择的项集合.
每次获取属性时都不一定生成.SelectedItems属性 – 如果您反映System.Windows.Forms程序集:
if (this.selectedListViewItemCollection == null)
{
this.selectedListViewItemCollection = new SelectedListViewItemCollection(this);
}
return this.selectedListViewItemCollection;
所以我倾向于认为你得到了一个过时的selectedListViewItemCollection.
我会尝试而不是在Item级别更改Selected属性,而是尝试将所选索引添加到ListView的.SelectedIndices属性中,看看是否有效.这样,ListView不依赖于拾取ListViewItem更改.
内容总结
以上是互联网集市为您收集整理的c# – .NET:ListView蓝调?全部内容,希望文章能够帮你解决c# – .NET:ListView蓝调?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。