我试图从另一个线程更改菜单项。我可以在其他控件上使用InvokeRequired / Invoke,但是由于菜单项不是Control,因此很难实现相同的功能。
对于其他控件,我正在这样做:
private delegate void SetControlEnableHandler(object sender, Boolean bValue);
private void SetControlEnabled(object sender, Boolean bValue)
{
Control control = (Control)sender;
if (control.InvokeRequired)
control.Invoke(
new SetControlEnableHandler(SetControlEnabled),
new object[] { sender, bValue }
);
else
control.Enabled = bValue;
}
Run Code Online (Sandbox Code Playgroud)
从工作线程中,我简单地调用:
this.SetControlEnabled(btnPress, true);
Run Code Online (Sandbox Code Playgroud)
它完成了工作。
有人可以帮我这里的菜单项吗?
谢谢,-Bhaskar
c# ×1