所以我这里有个问题。我在我的类中声明了一些变量,然后我尝试更改它,然后用我的 windows 窗体线程读取它。该变量被读取为声明它的初始值,没有任何东西可以改变它。例子:
我在 Class1.cs 中声明了值:
public static int TestVar = 51;
然后我稍后在同一类中将值更改为例如 45:
TestVar = 45;
然后我从我的 Windows 窗体线程中读取变量,如下所示:
label1.Text = Class1.TestVar.ToString();
我的 windows 窗体中的结果是 51 而不是 45。我将其声明为 0 或没有任何初始值都没有关系。它将保持为 0。
它已被声明的类将变量读取为 45,不知何故其他线程没有更新它。
windows窗体正在使用:
public void RunThread()
{
Thread thread = new Thread(new ThreadStart(RunForm));
thread.Name = "NewForm";
thread.Start();
}
public void RunForm()
{
Application.Run(new NewForm());
}
有什么帮助吗?