C# 将现有项移动到listview的顶部
我将数组中的项添加到列表视图中,如下所示:C# 将现有项移动到listview的顶部,c#,wpf,listview,C#,Wpf,Listview,我将数组中的项添加到列表视图中,如下所示: for (int i = 0; i < dataKeyList.Count; i++) { CallTabLv.Items.Add(new { Label = " " + keyArray[i], Value = valueArray[i] }); } 输出: Col Col2 ----------- one 1 two 2 three 3 我想将“三个3”移到列表的顶部,这样会像: Col Col2 --
for (int i = 0; i < dataKeyList.Count; i++)
{
CallTabLv.Items.Add(new { Label = " " + keyArray[i], Value = valueArray[i] });
}
输出:
Col Col2
-----------
one 1
two 2
three 3
我想将“三个3”移到列表的顶部,这样会像:
Col Col2
-----------
three 3
two 2
one 1
有什么建议吗?您可以使用
[Items.Insert][1]
在特定位置插入项目,而不是添加项目,它可以用于更改n
th索引中现有项目的位置
ListViewItem item= new ListViewItem("Test");//Define item here;
if(!CallTabLv.Items.Contains(theItem))
{
CallTabLv.Items.Insert(0,item);
}
else
{
n = CallTabLv.Items.IndexOf(item);
CallTabLv.Items.RemoveAt(n);
CallTabLv.Items.Insert(0, item);
}
您是否尝试了items.Insert方法?您好@un lucky,谢谢您的解决方案,但是我如何知道我的项目的索引,因为它是从数组中获取的,该项目是否会在数组中。。?
ListViewItem item= new ListViewItem("Test");//Define item here;
if(!CallTabLv.Items.Contains(theItem))
{
CallTabLv.Items.Insert(0,item);
}
else
{
n = CallTabLv.Items.IndexOf(item);
CallTabLv.Items.RemoveAt(n);
CallTabLv.Items.Insert(0, item);
}