UserControl
のFrameworkElement
イベントをビュー モデル コマンドにバインドするにはどうすればよいですか? 私は MVVM と Prism を使用しているので、ビュー モデルをビュー間で明確に分離するとよいでしょう。
私は複数のことを試しましたが、どれもうまくいきませんでした:
<i:Interaction.Triggers>
<i:EventTrigger EventName="FrameworkElement.Unloaded">
<i:InvokeCommandAction Command="{Binding Unloaded}" />
</i:EventTrigger>
</i:Interaction.Triggers>
このチュートリアルも使用http://blog.functionalfun.net/2008/09/hooking-up-commands-to-events-in-wpf.html
local:FrameworkElementBehavior.UnloadedCommand="{Binding Unloaded}"
コード ビハインドにいくつかの機能を追加する以外に選択肢はありませんか?
上記の試行はどちらもエラーになりませんが、コマンドは実行されません。
ここに私のビューモデルがあります:
public class CustomerViewModel : PosViewModelBase
{
public ICommand Unloaded
{
get { return new UnloadedCommand(); }
}
public CustomerViewModel()
{
}
private class UnloadedCommand : ICommand
{
public bool CanExecute(object parameter)
{
return true;
}
public event EventHandler CanExecuteChanged;
public void Execute(object parameter)
{
Debug.WriteLine("Customer stuff is out of view");
}
}
}