我正在使用 Caliburn 框架在 WPF 中重写一个项目。我来自 C++ 世界,所以即使是最简单的事情也有一些困难......
所以,假设我有:MainView、MainViewModel、DialogView、DialogViewModel。
在 MainView.xaml 中:...
<MenuItem Name="Dialog" Header="Dialog"></MenuItem>
... Caliburn 将其绑定到 MainViewModel 中的一个方法:
public void Dialog()
{
dynamic settings = new ExpandoObject();
settings.WindowStartupLocation = WindowStartupLocation.Manual;
_windowManager.ShowWindow(new DialogViewModel(_windowManager), null, settings);
}
它工作正常,对话框弹出。
现在,在这个对话框中我有:
<TextBox Name="Dimension1"/>
<TextBox Name="Dimension2"/>
另外,还有其他文本框、复选框等。然后是确定和取消按钮:
<Button Content="OK" Name="OK"></Button>
<Button Content="Cancel" Name "Cancel"></Button>
现在,就像现在一样,它们绑定到 DialogViewModel 中的 OK() 和 Cancel() 方法,我无法弄清楚或找到有关如何在 DialogViewModel 中处理它们的信息。
我在创建 DialogResultsAction 类时找到了一个示例,我可以将我的 OK/Cancel 按钮与此类中的方法绑定,但无法理解如何进一步进行......
你能告诉我我应该往哪个方向走吗?