2014-09-30 75 views
1

我有我的C#項目gridList。在我的gridList中有超過100000條記錄。我想對已過濾的行進行一些操作。例如,我通過「名稱」列過濾gridList,然後我想選擇所有過濾的行。我怎樣才能做到這一點?的DevExpress GridView的選擇行

謝謝你的幫助。

+1

你想選擇所有可見的行,或只選擇其中的一些,然後執行與所選行的一些行動?另外 - 你的項目是Winforms,WPF還是ASP?因爲DevExpress有很多框架。 – 2014-09-30 07:58:51

+0

我的項目是Winforms。我想選擇在devexpress gridview上過濾的行。例如; 對(INT I = 0;我 Bilal 2014-09-30 08:03:31

回答

2

要遍歷網格行(有分組,排序和過濾考慮到)使用下面的方法:

void TraverseRows(ColumnView view) { 
    for (int i = 0; i < view.DataRowCount; i++) { 
     object row = view.GetRow(i); 
     // do something with row 
    } 
} 

P.S.詳情請閱讀Traversing Rows文章。

+0

謝謝。這是我想要的最佳答案。 – Bilal 2014-09-30 08:34:46

+0

我還有一個問題給你。我寫代碼塊如上部分,但我有一個關於鑄造的問題。我的代碼塊是 for(int i = 0; i Bilal 2014-09-30 11:26:23

1

首先,你需要設置GridViewOptionsSelection.MultiSelect = true財產。

然後,選擇所有過濾行,你可以申請你的過濾器後,使用您的GridViewSelectAll()方法。

+0

謝謝你這麼多 – Bilal 2014-09-30 08:11:12

0

我找到tihs問題另一個答案:

void TraverseRows(ColumnView view,bool selectRemove) 
{ 
    dtTemp = new Data.Medical.Follow.DSFollow.FollowRequestsDataTable(); 
    for (int i = 0; i < gridViewList.RowCount; i++) 
    { 
     DataRow row = gridViewList.GetDataRow(gridViewList.GetVisibleRowHandle(i)); 
     row["is_selected"] = selectRemove; 
     dtTemp.AddFollowRequestsRow((DSFollow.FollowRequestsRow)row); 
    } 
} 
+0

事實上,這是不完全一樣的「我要選擇這些filtered'你行已經談到早前,因爲它沒有任何共同點‘中的DevExpress GridView中的條款選擇了’網格行。 – 2014-09-30 13:35:02

+0

我的英語還沒有告訴我的問題。所以我不能正確地告訴我的問題 – Bilal 2014-10-01 14:05:08