DevExpress XtraGrid 에서 선택된 행 유지

Published Jan 6, 2009 | Updated Sep 22, 2022 | 0 comments

출처 : http://www.devexpress.com/Support/Center/KB/p/A364.aspx?searchtext=two+gridview&tid=4b2d6f97-c4ae-48fc-87f6-8c5da6541e40&pid=-1

정렬 이벤트에서 미리 View 와 Rowhandle 을 잡아두고 정렬이 끝나면 이전 잡아둔 행으로 이동
새로고침 될때 사용하면 되겠네…

using DevExpress.XtraGrid;
using DevExpress.XtraGrid.Views.Grid;
...
object SaveFocusedRow = null;




private void gridView_StartSorting(object sender, System.EventArgs e) {
    GridView view = sender as GridView;
    SaveFocusedRow = view.GetRow(view.FocusedRowHandle);
}

private void gridView_EndSorting(object sender, System.EventArgs e) {
    GridView view = sender as GridView;
    int rowHandle = FindRowHandleByRowObject(view, SaveFocusedRow);
    if(rowHandle != GridControl.InvalidRowHandle) {
        view.FocusedRowHandle = rowHandle;
        SaveFocusedRow = null;
    }
}

private int FindRowHandleByRowObject(DevExpress.XtraGrid.Views.Grid.GridView view, object row) {
    if(row != null)
        for(int i = 0 ; i < view.DataRowCount ; i++)
            if(row.Equals(view.GetRow(i)))
                return i;
    return DevExpress.XtraGrid.GridControl.InvalidRowHandle;
}

private int FindRowHandleByDataRow(DevExpress.XtraGrid.Views.Grid.GridView view, DataRow row) {
    if(row != null)
        for(int i = 0 ; i < view.DataRowCount ; i++)
            if(view.GetDataRow(i) == row)
                return i;
    return DevExpress.XtraGrid.GridControl.InvalidRowHandle;
}

TAG INFORMATION

Learn more on this topic

Related Blog Posts

Join in the conversation

Leave a Comment

0 Comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

무료 온라인 전광판

전광판

텍스트를 입력하고 텍스트 효과 및 배경효과 를 변경해서 전체화면으로 표시할 수 있는 전광판 용도로 사용하실 수 있습니다. 각종 스포츠 및 공연 관람시 응원 용도로 사용이 가능합니다.

Carousel

여러개의 슬라이드를 추가하여 프레젠테이션 및 이미지 슬라이드 용도로 사용하실 수 있습니다. 브라우저가 포함된 IT 기기로 큰 모니터에 연결하여 매장 내 공지사항 및 메뉴소개를 이미지로 표시할 수 있습니다.

Pin It on Pinterest

Shares
Share This

Share This

Share this post with your friends!

Shares