WPF WebBrowser的MVVM导航事件

时间:2017-08-27 12:25:19

标签: wpf mvvm

任何人都可以指导我在导航时如何在WPF中为Webbrowser触发MVVM命令。

虽然代码在运行时给出了以下错误:

Provide value on 'System.Windows.Data.Binding' threw an exception.

XAML <: WebBrowser Name="Browser" Navigating="{Binding Path=NavigateCommand}" > </WebBrowser>

如果我使用代码隐藏方法来导航事件,则相同的代码可以正常工作。

请求您了解如何将视图模型委托命令绑定到WebBrowser的导航事件。

1 个答案:

答案 0 :(得分:0)

WebBrowser.Navigating是一个事件,而不是命令,因此您无法将其绑定到视图模型实现的命令。相反,您需要在视图中处理事件,并手动调用视图模型。

这样的事情(假设你的视图中有一个名为ViewModel的属性,它是对视图的视图模型的引用):

XAML:

<WebBrowser x:Name="Browser" Navigating="OnNavigating" />

代码背后:

private void OnNavigating(object sender, NavigatingCancelEventArgs e)
{
    ViewModel.NavigateCommand.Execute(null);
}