Winform窗体中Listview组件Items位置移动
2011-04-28 14:59
183 查看
#region 上移位置 /// <summary> /// 上移方法 /// </summary> /// <param name="listView"></param> private void ListViewUpMove(ListView listView) { if (listView.SelectedItems.Count == 0) { return; } listView.BeginUpdate(); if (listView.SelectedItems[0].Index > 0) { foreach (ListViewItem lvi in listView.SelectedItems) { ListViewItem lviSelectedItem = lvi; int indexSelectedItem = lvi.Index; listView.Items.RemoveAt(indexSelectedItem); listView.Items.Insert(indexSelectedItem - 1, lviSelectedItem); } } listView.EndUpdate(); if (listView.Items.Count > 0 && listView.SelectedItems.Count > 0) { listView.Focus(); listView.SelectedItems[0].Focused = true; listView.SelectedItems[0].EnsureVisible(); } } #endregion #region 下移位置 /// <summary> /// 下移方法 /// </summary> /// <param name="listView"></param> private void ListViewDownMove(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 lviSelectedItem = listView.SelectedItems[i]; int indexSelectedItem = lviSelectedItem.Index; listView.Items.RemoveAt(indexSelectedItem); listView.Items.Insert(indexSelectedItem + 1, lviSelectedItem); } } 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(); } } #endregion
相关文章推荐
- C#WinForm无边框窗体移动方法、模仿鼠标单击标题栏移动窗体位置
- WinForm中窗体resize的时候对于控件位置的控制
- C# WinForm开发系列之自定义无边框窗体(最大化,最小化,关闭,拉伸和移动的相关知识)
- DataSet&ListView分页和根据自己需要读取列数据,根据需要排列显示的位置或者可以说是顺序.[winform学习示例]
- .net Winform 控制子窗体在父窗体出现的位置
- WinForm 无边框窗体 拖动工作区移动窗体
- Winform 设置formborderStyle 为None后如何移动窗体
- winform 两个listBox左右互移,支持多选或单选移动,移动时源listBox除移已除动的Items
- WM_MOVE 窗体移动后的位置
- winform窗体弹出位置研究
- winform中,如何控制控件位置随窗体的大小改变而改变
- 保持各组件相对窗体的位置
- 设置Winform窗体滚动条位置
- winform中图片的左移 右移并记忆移动的位置
- winForm单击用户区可移动窗体,代码控制窗体最大适中
- winform移动窗体或窗体中的控件
- winform移动无边框窗体
- c# 固定窗体位置 即窗体不能被鼠标移动
- c# winform 窗体载入时位置跳动
- winform程序—窗体移动