我对WPF很新,并通过MVVM实现它,我正在尝试开发一个没有代码隐藏的应用程序,以帮助打破我对UI设计的思考方式。无论如何,要点:在我的XAML中,我有一个窗口,其中包含一个框架,它将托管我在单独的xaml文件中创建的各种页面。我想要框架将托管的各个页面中包含的按钮,以方便框架的导航。我意识到我可以把按钮放在窗户上,但那不是我要去的地方;我需要它们在框架碰巧指向的任何页面中。我认为这样可行:
<Button Style="{StaticResource NavigationButton}" Content="Design" Grid.Row="0" Grid.Column="0" Command="NavigationCommands.GoToPage" CommandParameter="DesignMenu.xaml" />
但按钮显示为灰色:(我认为由于页面是在框架内托管的,因为框架可以处理导航命令,命令会神奇地冒泡,最终到达框架,框架的来源属性会改变为designmenu.xaml吗?我也尝试通过引用框架的名称为命令指定一个目标,但页面没有“看到”框架,因为它们位于不同的文件中,因此也不起作用。欢迎任何见解或最佳实践。
答案 0 :(得分:1)
好吧,如果有人好奇,经过几天在桌子上敲打我的头后,我发现Hyperlink对象完全正是我在这里寻找的东西。这只是把它打扮成按钮的问题,瞧。此MSDN概述有助于:MSDN WPF Navigation Overview