Telerik 예제를 보고 GridView의 Drag and drop 테스트 프로그램을 개발하는 중에 drop을 할 때 row index 찾는 방법을 알 수가 없어서 고생을 했다.
검색을 해 보다가 찾은 방법을 기록으로 남긴다.
나중에 또 이용을 할 때 도움이 되길 바라면서 말이다.
drop 함수의 코드이다.
private void gridPoint_ProcessDragDrop(object sender, RadDropEventArgs e)
{
SnapshotDragItem draggedSnapshot = e.DragInstance as SnapshotDragItem;
if (draggedSnapshot == null)
{
return;
}
GridDataRowElement rowElement = draggedSnapshot.Item as GridDataRowElement;
var dragGrid = rowElement.ElementTree.Control as RadGridView;
var dropTarget = e.HitTarget as RadItem;
var targetGrid = dropTarget.ElementTree.Control as RadGridView;
var dropRowElement = dropTarget as GridDataRowElement;
if (dropRowElement == null)
return;
int rowIndex = dropRowElement.RowInfo.Index;
if (targetGrid == null || targetGrid != radGridView)
{
return;
}
먼저 e.HitTarget를 이용해서 RadItem 객체를 구한다.
var dropTarget = e.HitTarget as RadItem;
그리고 RadItem 객체를 이용해서 GridDataRowElement 객체를 구한다.
GridDataRowElement 객체를 통해 RowInfo를 확인할 수 있는데 이 것을 통해 row index를 구할 수 있다.
int rowIndex = dropRowElement.RowInfo.Index; |
'.NET' 카테고리의 다른 글
Codejock RibbonBar 예제 및 CXTPControlEdit spin message (0) | 2022.07.15 |
---|---|
Telerik GridViewSpreadExport 이용 방법 (0) | 2022.06.27 |
Telerik GridView Drag and Drop Example (0) | 2022.06.03 |
Telerik RadGrid Refresh, 동적으로 Binding data 변경 후 GridView Refresh (0) | 2022.06.03 |
C# winform 프로젝트에서 "디자이너 보기"가 사라지는 문제 해결 (2) | 2022.05.18 |