我有一个Windows窗体链接标签,“刷新”,刷新显示。
在我的代码的另一部分,一个单独的窗口表单的一部分,我有一个对话框,首先更改加载到显示器中的数据。执行完其他代码后,按“刷新”可以正确更新数据。
对话框菜单是否有一种简单的方法可以在完成数据更改后“点击”“刷新”链接标签?
使用Visual Studio 2008。
答案 0 :(得分:9)
对于按钮非常简单,只需使用:
button.PerformClick()
无论如何,我更喜欢做类似的事情:
private void button_Click(object sender, EventArgs e)
{
DoRefresh();
}
public void DoRefresh()
{
// refreshing code
}
并致电DoRefresh()
而非PerformClick()
编辑(根据OP的变化):
你仍然可以使用我的第二个解决方案,这是更可取的:
private void linkLabel_Click(object sender, EventArgs e)
{
DoRefresh();
}
public void DoRefresh()
{
// refreshing code
}
从表单外部,您可以将DoRefresh()
称为公开。
但是,如果您确实需要以编程方式生成点击,请查看Yuriy-Faktorovich's Answer
答案 1 :(得分:5)
您可以拨打PerformClick method。但通常情况下,最好让按钮的Click事件调用您编写的Refresh方法。菜单也调用该方法。否则你的菜单取决于那里的按钮。
编辑:
LinkLabel显式实现了IButtonControl。所以你可以使用:
((IButtonControl)button).PerformClick();
答案 2 :(得分:0)
您可以使用方法刷新显示,button_click和对话框调用此方法
public void refrechDate()
{
}
private void button_click(...)
{
refrechData();
}
答案 3 :(得分:0)
private void MyMethod()
{
// ...
// calling refresh
this.button1_Click(this.button1, EventArgs.Empty);
// ...
}
private void button1_Click(object sender, EventArgs e)
{
// refresh code
}