Rav*_*mer 5 c# events winforms
我有一个Windows窗体链接标签,"刷新",刷新显示.
在我的代码的另一部分,一个单独的窗体的一部分,我有一个对话框,首先改变加载到显示器中的数据.执行此其他代码后,按"刷新"可正确更新数据.
对话框菜单完成更改数据后,是否有一种简单的方法可以"点击""刷新"链接标签?
使用Visual Studio 2008.
对于按钮非常简单,只需使用:
button.PerformClick()
Run Code Online (Sandbox Code Playgroud)
无论如何,我更喜欢做类似的事情:
private void button_Click(object sender, EventArgs e)
{
DoRefresh();
}
public void DoRefresh()
{
// refreshing code
}
Run Code Online (Sandbox Code Playgroud)
并打电话DoRefresh()
而不是PerformClick()
编辑(根据OP的变化):
您仍然可以使用我的第二个解决方案,这是更可取的:
private void linkLabel_Click(object sender, EventArgs e)
{
DoRefresh();
}
public void DoRefresh()
{
// refreshing code
}
Run Code Online (Sandbox Code Playgroud)
从表单外部,您可以打电话,DoRefresh()
因为它标记为公开.
但是,如果你真的需要以编程方式生成点击,只需看看Yuriy-Faktorovich的答案
您可以调用PerformClick方法.但通常情况下,最好让按钮的Click事件调用您编写的Refresh方法.菜单也调用该方法.否则你的菜单取决于那里的按钮.
编辑:
LinkLabel显式实现了IButtonControl.所以你可以使用:
((IButtonControl)button).PerformClick();