【发布时间】:2009-07-27 17:01:48
【问题描述】:
ListView 有另一个问题 :( 现在我需要在组中移动项目(向上、向下、到开头、到末尾),但 ListView 总是在末尾显示移动的项目。
这是将项目移到开头的示例代码:
if (1 == listView1.SelectedItems.Count)
{
ListViewItem item = listView1.SelectedItems[0];
ListViewGroup gp = item.Group;
int index;
index = item.Index;
if (index < listView1.Items.Count)
{
index = 0;
listView1.Items.Remove(item);
item.Group = gp;
listView1.Items.Insert(index, item);
}
}
我尝试谷歌寻找一些解决方案,我找到了和我有同样问题的其他人 (http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/838f90cd-33d8-4c81-9ed9-85220b511afe),但他的解决方案不起作用:(
我考虑过使用 ObjectListView 但我修改了 ListView 女巫现在支持拖放与 WinAmp 效果、onScroll 事件、滚动同步等。我不想失去这些东西 :(
【问题讨论】:
-
您最后一次查看 ObjectListView 是什么时候?它对拖放和 OnScroll 事件有很好的支持。它内置了对通过拖动重新排列项目的支持。
-
[诚然,重新排列在组内不起作用] :)
-
+1 发现自己在同一条船上 - 试图将项目插入和/或移动到 ListView 中的特定索引。另外,感谢您对 ObjectListView 的提醒——我们稍后会研究。