问题描述
我有一个MVP Windows窗体应用程序,该应用程序具有:
[Vue warn]: Avoid mutating a prop directly since the value will be overwritten
whenever the parent component re-enters.
通过创建演示者对象,将视图对象传递给演示者的构造函数并调用演示者的run方法来开始复制。像这样的东西。
IView
{
string Value { get;set; }
event EventHandler<EventArgs> SaveValue;
}
IPresenter
{
Run();
OnSaveValue(object sender,EventArgs e);
}
IModel
{
string Value {get;set;}
}
当用户与UI交互时(例如,单击SaveValue按钮),表单运行创建事件Save and Presenter的代码,该事件已订阅该事件运行方法OnSaveValue。
我认为这是MVP Windows窗体应用程序的基础。
我的问题是所有这些代码都使用Application.Run()从一个线程运行。 我想要2个线程:
这是一个中等大小的项目,具有大约5个以上的视图和50个以上的自定义控件。我读过有关使用Invoke方法从另一个线程更新表单和控件的信息,但是使用Invoke重写所有UI代码是很痛苦的。
我正在寻找一个将是包装类的解决方案,并且我可以从后端调用控件,并且它将通过调用自动运行它。或者,也许您知道一些运行后端线程并从中更新UI的最佳实践。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)