【发布时间】:2017-08-11 10:35:34
【问题描述】:
UWP 我正在尝试在按钮样式上设置命令,但我的命令没有触发 :(
有什么明显的想法吗?
<Style x:Key="TimeBtnStyle" BasedOn="{StaticResource ClickBtnStyle}" TargetType="Button">
<Setter Property="Command" Value="{Binding Path=vm.CommandTester}"/>
<Setter Property="CommandParameter" Value="{Binding Content}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid x:Name="RootGrid" Background="Transparent">
<Border CornerRadius="12" Background="White" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="4">
<ContentPresenter x:Name="ContentPresenter" AutomationProperties.AccessibilityView="Raw" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" ContentTransitions="{TemplateBinding ContentTransitions}">
</ContentPresenter>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
【问题讨论】:
-
Setter 不支持绑定。即使有,也不要这样做。
-
@JustinXL 那么如何从样式中调用命令?
-
我不建议这样做。为什么你需要一个风格的命令呢?
-
@JustinXL 因为我有多个按钮都具有相同的样式和命令。我认为将命令放在样式中是要走的路?
-
我会把它放在
UserControl中。