【发布时间】:2018-07-10 06:32:16
【问题描述】:
在我的 Windows 窗体应用程序中,我试图更新状态栏上的文本,但无法这样做。 这是我的代码:
public void CreateMyStatusBar(string msg = "Ready")
{
StatusBar statusBar1 = new StatusBar();
this.Invoke(new Action(() =>
{
statusBar1.Text = msg;
statusBar1.Update();
}));
statusBar1.Invalidate();
statusBar1.Refresh();
statusBar1.Update();
Form1.gui.Controls.Add(statusBar1);
}
Form1 是我的主要表单,gui 在 Form1.cs 中定义为public static Form1 gui;。
每当我打电话时
CreateMyStatusBar("ABC")
函数它显示第一次调用时发送给它的文本。但是当再次调用此函数时,文本不会更新。
我浏览了this 和this 等各种帖子,并开始编写上述代码,但它似乎不起作用。谁能告诉我哪里出了问题或者我必须做些什么来解决这个问题?
【问题讨论】:
-
你认为
Form1.gui.Controls.Add(statusBar1);更新状态栏了吗?还是添加一个新的状态栏?