C# LISTVIEW控件使用方法
z直接上代码
//朝上移动功能函数
private void ListViewItemUpMove(ListView listView)
{
if (listView.SelectedItems.Count == 0)
{
return;
}
listView.BeginUpdate();
if (listView.SelectedItems[0].Index > 0)
{
foreach (ListViewItem listViewItem in listView.SelectedItems)
{
ListViewItem listViewSelectItem = listViewItem;
int indexSelectedItem = listViewItem.Index;
listView.Items.RemoveAt(indexSelectedItem);
listView.Items.Insert(indexSelectedItem - 1, listViewSelectItem);
}
}
listView.EndUpdate();
if (listView.Items.Count > 0 && listView.SelectedItems.Count > 0)
{
listView.Focus();
listView.SelectedItems[0].Focused = true;
listView.SelectedItems[0].EnsureVisible();
}
}
//朝下移动功能函数
private void ListViewItemDownMove(ListView listView)
{
if (listView.SelectedItems.Count == 0)
{
return;
}
listView.BeginUpdate();
int IndexMaxSelectedItem = listView.SelectedItems[listView.SelectedItems.Count - 1].Index;
if (IndexMaxSelectedItem < listView.Items.Count - 1)
{
for (int i = listView.SelectedItems.Count - 1; i >= 0; i--)
{
ListViewItem listViewSelectItem = listView.SelectedItems[i];
int indexSelectItem = listViewSelectItem.Index;
listView.Items.RemoveAt(indexSelectItem);
listView.Items.Insert(indexSelectItem + 1, listViewSelectItem);
}
}
listView.EndUpdate();
if (listView.Items.Count > 0 && listView.SelectedItems.Count > 0)
{
listView.Focus();
listView.SelectedItems[listView.SelectedItems.Count - 1].Focused = true;
listView.SelectedItems[listView.SelectedItems.Count - 1].EnsureVisible();
}
}
目的是通过对listview控件中的选项进行上移动和下移动顺序的重新设置。