簡體   English   中英

從另一個表單中刪除DataGridView的行

[英]Remove row of DataGridView from another form

我在從DataGridView中刪除行時遇到問題。 我有帶客戶端的DataGridView。 當我單擊行時,將打開新表格(帶有客戶數據)。 在此表單中,有一個“刪除”按鈕,其中單擊“ Sub”是此代碼:

Form1.DataGridView1.Rows().RemoveAt(_personIndex)

問題在於此代碼無法正常工作。 我以與datagridview相同的形式嘗試了此代碼,並且有效。 謝謝您的幫助。

僅當共享DataGridView1時,您訪問DataGridView1的方式才有效。 在您的客戶端數據表單上,創建一個構造函數,該構造函數可以采用DataGridViewRows或DataGridView的集合,這樣便可以對其進行訪問。

您應該具有第二個表單,該表單在發生事件時加載客戶信息,並由您的主表單處理該事件。 這樣,您可以直接訪問datagridview。

您將需要執行以下四項操作:

  1. 第二種形式的事件聲明為:

    Friend Event DeleteClient(ByRef rowID As Integer)

  2. 單擊行時啟動的第二種形式必須使用withevents聲明:

    Dim WithEvents secondForm As ClientForm

  3. 一個事件處理程序,它將捕獲要刪除的行並將其從datagrid視圖中刪除

     Private Sub DeleteClient(ByRef rowID As Integer) Handles clientform.DeleteClient DataGridViw1.Rows().RemoveAt(rowID) End Sub 
  4. 刪除按鈕的按鈕單擊事件中的RaiseEvent調用。

    RaiseEvent DeleteClient(idOfRowToBeRemoved)

每次單擊“刪除”按鈕后,所有准備就緒,將觸發該事件並被稱為輔助表單的表單捕獲,並應刪除該行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM