刷新dgv仅适用于激活的事件,为什么?

时间:2013-07-29 15:55:27

标签: vb.net datagridview

我有两种形式,dgv连接到两个不同的数据集。当我在其中一个数据集中更改我的数据时,我必须刷新另一个数据集(我知道解决方案不是最好的)。在尝试了许多不同的重新绑定,刷新方法后,我发现以下代码有效:

  

Private Sub View_Activated(byval sender as Object,_ Byval e as   System.Eventargs)Handels MyBase.Activated Table_Load(Nothing,   没什么)End Sub

     

Private Sub View_Load(byval sender as Object,_ byval e as   system.eventargs)Handels Mybase.Load   Me.TableAdapter.Fill(Me.Dataset.Table)End Sub

在dgv1中查找内容后,我可以使用这些命令查看dgv2中的更改。但是,当我将mybase.activated更改为mybase.shown或其他内容时,它不再起作用了。显然这仅在我使用事件激活时才有效,但我不明白为什么? BTW。我完全不明白为什么当我有激活事件时dgv用新数据更新但是当我评论激活事件时,dgv没有更新。

1 个答案:

答案 0 :(得分:0)

当表单窗口获得焦点时,窗体的Activated事件将触发。 Load事件仅在最初加载表单时触发。

当您在一个表单上进行更改,并将焦点更改为第二个表单时,Activated会激活。