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"/>
さらに、他のテキストボックス、チェックボックスなど。次に、[OK] ボタンと [キャンセル] ボタンがあります。
<Button Content="OK" Name="OK"></Button>
<Button Content="Cancel" Name "Cancel"></Button>
現在、それらは DialogViewModel の OK() および Cancel() メソッドにバインドされているため、DialogViewModel でそれらを処理する方法についての情報を見つけたり見つけたりすることはできません。
DialogResultsAction クラスが作成されたときの例を見つけました。OK/キャンセル ボタンをこのクラスのメソッドにバインドできますが、さらに先に進む方法がわかりません...
どの方向に進むべきかアドバイスしてもらえますか?