Vb.net 如何调用用户控件';来自另一个用户控件的方法?
我无法从一个用户控件调用另一个用户控件的方法。什么也没发生。 假设我有一个control1和control2控件的名称 在control1中,我有一个方法InvokeItems(),用于在control1中填充我的DataGridView。 在control2中,我有一个按钮,它将调用control1中的InvokeItems()方法 control1和control2在表单中同时加载。 control1在我的DataGridView中正确加载数据,但是当我更新数据库中的数据并单击control1中的按钮再次加载详细信息时,什么也没有发生 我想调用control1中的方法来检查记录集中的任何更新。这应该是我想要的。但我无法让它工作 但当我在control2中放置一个按钮并调用InvokeItems方法时,即使我更新了数据库中的一些数据,它也会正确加载DataGridView 这就是我所做的 在控制1中:Vb.net 如何调用用户控件';来自另一个用户控件的方法?,vb.net,Vb.net,我无法从一个用户控件调用另一个用户控件的方法。什么也没发生。 假设我有一个control1和control2控件的名称 在control1中,我有一个方法InvokeItems(),用于在control1中填充我的DataGridView。 在control2中,我有一个按钮,它将调用control1中的InvokeItems()方法 control1和control2在表单中同时加载。 control1在我的DataGridView中正确加载数据,但是当我更新数据库中的数据并单击control
Public Sub New()
InvokeItems()
End Sub
Public Sub InvokeItems()
Dim objInvoker As New ClassItems
Dim BS As New BindingSource()
BS.DataSource = objInvoker.InvokeList
GridItems.DataSource = BS
End Function
在控制2中:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim objSM As New control1
Call objSM.InvokeItems()
End Sub
提前感谢您的建议。您的控件2上的处理程序将创建一个新的Control1实例,这不是网格所在的实例 您可以在Control2上创建一个属性,并在构造后传入Control1实例
或者在一个可以访问两个控件(即它们所在的窗体)的范围内处理此事件。如何绑定按钮以调用Populate?@norekhov我忘了提到我有一个名为ClassItems的类,该类有方法InvokeList来填充我的网格。另外,我已经更新了上面的问题。谢谢你的建议。我会努力的。。并给你结果的反馈。