c#调用另一个winform上的按钮事件

标签 c#

我想在单击 form1 上的 button1 时调用 form2 上的 button2 并执行 button2 事件下的代码。

以下代码将不起作用:

button2.PerformClick();

我收到的错误是“button2 在当前上下文中不存在”,所以我尝试将修饰符设置为 public,还尝试将事件设置为 public void ... 运气不好。 form2.button2.PerformClick(); 也不起作用。

最佳答案

您应该将要调用的代码放入 Form2 的 public 方法中,然后从 form1 调用该方法。

如果您需要 form2 的特定实例来调用该方法,那么您可以将 form2 中的 Handle 属性存储在某处,然后按如下方式获取适当的表单。

var myForm = Form.FromHandle(myForm2Handle);
myForm.MyPublicMethod();

然后您可以从 Button1 的点击事件中调用它。

关于c#调用另一个winform上的按钮事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5106574/

相关文章:

c# - .NET GC 停止桌面应用程序 - 性能问题

c# - 绑定(bind)到 ListView 上 ObservableCollection 中的前 N ​​项

c# - 为什么不能在 C# 7.2 的结构中同时使用只读缓冲区和固定大小缓冲区

c# - Observable TcpListener 在单连接后终止

c# - 发现类(class)不起作用

c# - 可空泛型扩展方法

c# - 如果该行存在于 C# 中的 SQL 数据库中,则显示标签

c# - WinForms 自定义 3 纽扣单元

c# - 异常堆栈跟踪不显示抛出异常的位置

C# 代码生成器