2014-10-20 138 views
0

如何通過拖放操作更改RadGridview(Telerik組件)的行。使用DragDrop排序的Gridview行排序

我想items.Insert(i,commonhaber)不items.Add但我不知道下降指數(我)。

void gridView_News_Drop(object sender, DragEventArgs e) 
{ 

      var DroppedControl = e.Data.GetData("interpressentitygridview") as RadGridView; 

      if (DroppedControl==null) 
      return; 

      IList<CommonHaber> tempHabers=new List<CommonHaber>(); 
       foreach (CommonHaber commonHaber in DroppedControl.SelectedItems) 
       { 
        tempHabers.Add(commonHaber); 
        gridView_gruphaber.Items.Add(commonHaber); 

       } 
} 

回答

0

我解決了如何找到索引。這裏你是...

gridView_gruphaber.RowLoaded += new EventHandler<RowLoadedEventArgs>(gridView_News_RowLoaded); 

void gridView_News_RowLoaded(object sender, RowLoadedEventArgs e) 
    { 
     GridViewRow row = e.Row as GridViewRow; 
     if (row != null) 
     { 
      row.PreviewDrop += new DragEventHandler(row_PreviewDrop); 
     } 
    } 

    private int droppedRowIndex = -1; 
    void row_PreviewDrop(object sender, DragEventArgs e) 
    { 
     GridViewRow row = sender as GridViewRow; 

     if (row != null) 
     { 
      CommonHaber droppedCommonHaber = row.Item as CommonHaber; 

      droppedRowIndex = gridView_gruphaber.Items.IndexOf(droppedCommonHaber); 

     } 
    }