0

当我使用对话框表单添加新记录时,我正在尝试刷新 datagirdview。我想知道如何刷新我的datagirdview。我有两个获胜表格。表单 A称为FrmContactDetailList,它有一个 datagridview,我正在显示来自 sql server 的数据。下面的第一个代码块用于将数据绑定到网格。这是在表单加载事件中给出的,在这个表单中我有一个名为“添加新记录”的按钮。一旦我按下此按钮,它就会打开一个正在打开另一个表单的获胜表单。下面是我用来通过按钮单击事件打开它的代码。

这将打开Form B。表单称为FrmClientDetails。此表单将有一个文本框和一个保存按钮。因此,一旦我在文本框中输入新名称并按保存,我希望更新 Form A 中的 datagirdview。并在我关闭表格 B 后显示新记录。我该如何实现这一点。

此代码用于绑定 datagridview。我已经给出了这是表单加载事件。

 Sub GetContactList()
        Dim BindData As New VoucherClass
        Dim dt As DataTable = BindData .Get_Client_List
        DataGridView.DataSource = dt 
 End Sub


 Private Sub FrmContactDetailsList_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        GetContactList()
 End Sub

我已使用此代码打开对话框表单以输入新数据。

  Private Sub BtnOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnOpen.Click
        Dim FrmNewContact As New FrmClientDetails
        FrmNewContact.Owner = Me
        FrmNewContact.ShowDialog()
    End Sub
4

2 回答 2

0

试试这个:FrmNewContact.ShowDialog()
If FrmNewContact.ShowDialog() = DialogResult.OK Then
Me.DataFridView.Refresh()
End IF
你可能需要在模态的关闭操作中为对话框结果包含一个设置器,而不是。
Me.DialogResult = DialogResult.OK
Me.Close()

于 2013-09-04T03:52:55.057 回答
0

当绑定数据更改时,它会自动反映到绑定的数据网格视图中。

编辑:

处理 FrmNewContact 的 Closing 事件。您可以在该子中刷新您的 datagridview。

Dim WithEvents dialog As New FrmNewContact
Sub done() Handles dialog.FormClosed
    Me.DataGridView1.Refresh()
End Sub

下一次编辑:

Dim BindData As New VoucherClass
Dim dt As DataTable = BindData .Get_Client_List

在 sub 之外声明它们。所以你应该有这个:

Dim BindData as VoucherClass
Dim dt as DataTable

Sub GetContactList()
        BindData = New VoucherClass
        dt = BindData .Get_Client_List
        DataGridView.DataSource = dt
End Sub
于 2012-12-07T17:35:24.913 回答