我是WPF领域的相对初学者,所以我相信这将是许多问题中的第一个!
我有一系列的切换按钮,所有这些按钮都有一个自定义模板,用于显示一个具有透明背景的图像,当用户切换按钮时,该图像就会突出显示。
我想在内容周围添加填充,这样突出显示的区域会扩展到内容周围。
这是可行的,但是用户仍然需要点击内部区域来激活按钮,这不是我想要的。
我假设这是因为我使用的是
ContentPresenter
绑定到按钮的填充,这被归类为内容的外部,但不确定修复此问题的最佳方法。
但是,当取消选择按钮时,它确实起作用。
下面是一些XAML,显示了应该能够直接复制和粘贴到XAMLPAD中的问题。
<Page.Resources>
<Style x:Key="ValidationToggleButton" TargetType="ToggleButton">
<Setter Property="Padding" Value="5" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate >
<Grid Name="MainGrid">
<Viewbox>
<ContentPresenter Margin="{TemplateBinding Padding}"
Content="{TemplateBinding Property=Button.Content}" />
</Viewbox>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="ToggleButton.IsChecked" Value="True">
<Setter TargetName="MainGrid" Property="Background" Value="#88FFFF55" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Page.Resources>
<Grid>
<GroupBox Grid.Column="0" Header="Validation" BorderBrush="#55BBE6" Margin="2" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<ToggleButton Grid.Column="0" Style="{StaticResource ValidationToggleButton}">
CLICK
</ToggleButton>
</Grid>
</GroupBox>
</Grid>
有人知道我该怎么纠正这个吗?