我该如何移动
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
到viewmodel并仍能控制“后退”?在代码隐藏中,我可以使用 e.Cancel = true; ,但如何在viewmodel中使用它?
答案 0 :(得分:0)
我得到的第一个想法是将其保留在代码隐藏中,并将消息发送到viewmodel,因此它应该改变它的状态。但我仍然希望将事件绑定到VM。
答案 1 :(得分:0)
你不能绑定一些不可绑定的东西。您所能做的就是使用Behavior<T>
创建一个假绑定,但没有多大意义。
相反,您可以简单地在ViewModel中转发事件,执行以下操作:
e.OnCancel = ViewModel.OnBackKeyPress();
然后让OnBackKeyPress()
返回bool
。