请高手解答,在我认为是一个比较怪的问题

jason_mf 2006-10-26 08:38:19
在ListView中(ViewType = Details),这个ListView和资源管理器一样,
问题是:在没有运行 listView1.Sorting = SortOrder.Ascending 或
listView1.ListViewItemSorter = new ListViewItemComparer(e.Column);其中任何
一个之前,也就是还没进行排序,重命名ListViewItem,item在ListView中的显示正常,
在排序之后再重名,被重命名Item正常,但他的前一项或后一项就不正常了,须手动刷新
(在重命名代码后有刷新代码,但没用),下面是不正常的现象:
Item1.text = "aa"
Item2.text = "cc"
item3.text = "ee"
item4.text = "gg"
情况一:
重命名(ListViewItem.BeginEdit();)item3.text = "bb"
这时经过排序item3到第二项item2成为第三项,但item2.text = "bb"
情况二:
重命名(ListViewItem.BeginEdit();)item3.text = "hh"
这时经过排序item3到最后项item4成为第三项,但item4.text = "hh"
只有在手动点击刷新后item2或item4的text恢复正常。
在重命名前已将 listView1.Sorting = SortOrder.None
另外item的值都是XML获取的,重命名是重写XML然后重新从XML加载item的值。

这个该怎么办啊?请大家帮忙啊
...全文
88 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jason_mf 2006-10-26
  • 打赏
  • 举报
回复
先放着看看,过两天再结贴。
jason_mf 2006-10-26
  • 打赏
  • 举报
回复
oolongTea(江山留胜迹,我辈复登临。)
谢谢你的建议,不过我没这么做,因该是我的刷新代码写的有问题,
我把刷新去掉就好了。

问题解决。
oolongTea 2006-10-26
  • 打赏
  • 举报
回复
我也遇到类似的问题,就是datagridview死活不能自动刷新,
而相同的代码拷到新建的工程里面去确正常刷新
或者另一种在别的工程里面刷新的办法拷到这个工程居然又是不能刷新
后来我使用timer控件在刷新之后的0.1秒后再刷新一次,这样看起来刷新的有点延迟,但没办法,
搜索了整个互联网没有类似的个案之后,我把它视为bug
lizhizhe2000 2006-10-26
  • 打赏
  • 举报
回复
帮顶吧!我要GO了
zjmotion 2006-10-26
  • 打赏
  • 举报
回复
没看懂~
jason_mf 2006-10-26
  • 打赏
  • 举报
回复
我所谓的刷新就是从xML重新取值。

大家一定要帮下忙啊,帮顶也行。同样感谢

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧