[英]How to Add Row at Last position and Remove Row from current position In DataGridview in VB.net
[英]How to remove a row from datagridview and reset a particular column (vb.net 2005)
我正在使用VS 2005版。 我正在開發winform桌面應用程序。 假設我有一個未綁定的datagridview,其表如下所示:
刪除之前的原始數據網格:
如果我刪除了東西D(項目編號5),則“項目編號”列應相應地進行自身重置。 預期輸出應為:
刪除行后:
“項目編號”列不是自動編號,它只是我在用戶添加到新行(新材料)中時遞增分配的編號。 我嘗試在rowremoved事件中使用以下代碼,但未能實現預期的輸出。 請幫忙。 謝謝。
如果目標只是在單元格中顯示記錄索引,則無需為單元格分配值,並且足以在CellFormatting
事件中設置e.Value = e.RowIndex + 1
。
但是根據您的評論,看來您也需要這些單元格也具有值。 所以,你需要處理RowsRemoved
和RowsAdded
的事件DataGridView
和刷新行號為單元格的值:
Public Sub RefreshRowNumbers(g As DataGridView)
For Each r As DataGridViewRow In g.Rows
r.Cells(1).Value = r.Index + 1
Next
End Sub
Private Sub DataGridView1_RowsRemoved(sender As Object, _
e As DataGridViewRowsRemovedEventArgs) Handles DataGridView1.RowsRemoved
RefreshRowNumbers(DirectCast(sender, DataGridView))
End Sub
Private Sub DataGridView1_RowsAdded(sender As Object, _
e As DataGridViewRowsAddedEventArgs) Handles DataGridView1.RowsAdded
RefreshRowNumbers(DirectCast(sender, DataGridView))
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.