我正在使用此DockPanel
。
<DockPanel>
<Frame x:Name="_mainFrame">
<Frame.Template>
<ControlTemplate TargetType="{x:Type Frame}">
<DockPanel Margin="7">
<StackPanel Margin="7" Orientation="Horizontal" DockPanel.Dock="Top">
<Button Margin="5" Content="Avast! Go back!" Command="{x:Static NavigationCommands.BrowseBack}" IsEnabled="False" />
<Button Margin="5" Content="{Binding ButtonForwardtext}" Command="{x:Static NavigationCommands.BrowseForward}" IsEnabled="False" Width="52" />
</StackPanel>
<Border BorderBrush="black" BorderThickness="2" Padding="7" CornerRadius="4">
<StackPanel HorizontalAlignment="Stretch" Width="90" Orientation="Vertical" Margin="0,0,10,0" DockPanel.Dock="Left">
<Button HorizontalAlignment="Stretch" Content="New Page!" Command="{Binding FwdText, Mode=OneWay}" />
</StackPanel>
</Border>
<Border BorderBrush="Black" BorderThickness="2" Padding="7" CornerRadius="4">
<ContentPresenter />
</Border>
</DockPanel>
</ControlTemplate>
</Frame.Template>
</Frame>
</DockPanel>
我已成功连接数据上下文,但是当我尝试将按钮文本绑定到ViewModel中的属性(出于测试目的)时,无论出于何种原因,它都不起作用。如果我将ViewModel绑定在DockPanel
之外,它可以正常工作。
任何人都知道在ControlTemplate中绑定到ViewModel的正确方法吗?我已经尝试过TemplateBinding,但仍然不喜欢它。