본문 바로가기
Web Program/Asp.net Lecture

listview 에서 item 이동

by 현이빈이 2009. 6. 5.
반응형

ListItem 컨트롤에는 Item 을 Move 하는 기능이 없다..

있을 만도 한데.. 왜 없을까..

기본적으로 Item 을 아래로 움직이는 기능을 구현했다.

if (1 == listView1.SelectedItems.Count)

{

   ListViewItem item = listView1.SelectedItems[0];

   int index = item.Index;

   index++;

   if (index < listView1.Items.Count)

   {

      listView1.Items.Remove(item);

      listView1.Items.Insert(index, item);

      item.Selected = true;

      //listView1.Focus();

   }

}


다중 선택 Item 을 구현할려면..

if (listView.SelectedItems.Count < 1)
    MessageBox.Show("선택된 파일이 없습니다.");

   //if (listView.SelectedIndex == listView.Items.Count - 1)
   // MessageBox.Show("마지막 파일은 이동 불가 합니다.");

   //if (listView.SelectedItems.Count > 1)
   // MessageBox.Show("이동은 한개 파일만 가능합니다.");

   for (int i = listView.SelectedItems.Count - 1; i >= 0; i--)
   {
    ListViewItem item = listView.SelectedItems[i];
    int intIndex = 0;
    intIndex = listView.SelectedItems[i].Index + 1;

    if (intIndex != listView.Items.Count)
    {     
     listView.Items.RemoveAt(listView.SelectedIndices[i]);
     listView.Items.Insert(intIndex, item);
     listView.Items[intIndex].Selected = true;
    }
    else
     break;
   }

반응형