C# 如何从控制器类更新MainWindow中的标签?
我的控制器是实现我的模型并进行计算的主要方法。我的MainWindow类有一个按钮,它将在单击后更新来自控制器的结果。现在,我无法对如何从控制器更新标签进行重新分级 按钮方法是我的观点C# 如何从控制器类更新MainWindow中的标签?,c#,user-interface,mono,label,gtk2,C#,User Interface,Mono,Label,Gtk2,我的控制器是实现我的模型并进行计算的主要方法。我的MainWindow类有一个按钮,它将在单击后更新来自控制器的结果。现在,我无法对如何从控制器更新标签进行重新分级 按钮方法是我的观点 public void Button1_Clicked(object sender, EventArgs args) { } 我尝试从控制器类访问MainWindow类 Application.Init(); MainWindow win = new
public void Button1_Clicked(object sender, EventArgs args)
{
}
我尝试从控制器类访问MainWindow类
Application.Init();
MainWindow win = new MainWindow();
//here I want to use win object to access my view
//but I can not access my labels
win.Show();
Application.Run();
奇怪的是:
win.Button1_Clicked.first_label
我只能通过我的按钮访问标签,这对我来说完全没有任何意义如果要更新标签或表单中的任何其他控件,应使用公共修饰符编写相应的方法 公开标签/控件是一种糟糕的做法 因此,我建议的解决方案是编写一个带有字符串参数的公共方法来设置文本 e、 g: 编辑: 要设置文本,请使用
win.SetLabelText("some text");
win.SetLabelText("some text");