2011-07-20 71 views

回答

1

您可以使用GetSelectedRows方法(很好地命名的權利?)獲得選定的行。 然後,您可以使用循環遍歷行並刪除選定的行。

另外,我發現這個「教程」,這可能是你在找什麼:http://www.devexpress.com/Support/Center/KB/p/A234.aspx

它談到了ColumnView.DeleteSelectedRows方法,雖然這只是在XtraGrid中的較新版本。

+0

從電網選擇多行。並單擊刪除它們。很好地瞭解理論方面,但如果我能看到允許一次從網格中刪除多行的工作代碼,那將是非常好的。我可以通過獲得專注的行處理來刪除單行。 – Cannon

+0

@buffer查看我的更新評論。基本上,它獲得了一系列重點突出的句柄。 – Yuf

+0

GetSelectedRows已經明確。會試試看。謝謝。 – Cannon

0

你不能刪除多於一行的時間,但我們可以欺騙的C#。 實際上,當您使用此語句從網格視圖中刪除一行時GridData.Rows.RemoveAt(RowIndex); 行計數減1並且行索引將更改,因此您必須注意這一點。 在這裏,首先您可以創建一個等於零的整數變量,並且當您將一行增量刪除一個時。 秒,將要刪除的行的索引放入數組中,然後使用for循環刪除行,但在發送參數時要小心。

int deletedValue = 0 ; 

for (int j = 0; j < counter; j++)

{ 
if (Array.binarySearch(myArray,j)){ 
    GridData.Rows.RemoveAt(j-deletedValue); deletedValue++;` 
} 
else {//The non deleted rows}} 
}