我想在按下时更改我的按钮颜色:
<DataTemplate>
<!--Click="btn_Click"-->
<ItemsControl DataContext="{Binding}" ItemsSource="{Binding}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button
Name="btn"
DataContext="{Binding}"
Height="65" Width="79"
Background="Gray"
>
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Ellipse Name="elipse1" Height="65" Width="79" Fill="{Binding Path=ButtonColor}" Visibility="Collapsed"></Ellipse>
<ControlTemplate.Triggers>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="elipse1" Property="Visibility" Value="Visible"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Button.Template>
</Button>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
它似乎没有更好的工作,然后我使用所有triger&lt;&gt;灰色按钮没有显示如果这个模板比绑定更强吗?是真的吗?怎么结果呢?
答案 0 :(得分:0)
问题在于,当没有按下按钮时 - 它没有视觉冲击(Visibility =“Collapsed”) - 按钮内没有元素 - 因此它变得不可见(然后很难按下它: ))。
你需要在ControlTemplate中放置除Ellipse之外的东西,让它显示一些东西而不是椭圆。