【发布时间】:2012-11-29 00:53:58
【问题描述】:
我有以下问题:我有一个Button,其中有一个StackPanel,在StackPanel 中有一个ContentControl 和一个Label,并且我已经设置了按钮的属性@ 987654326@ 和 IsPressed 在动作发生时更改按钮的颜色。但是,当鼠标悬停在按钮上时,我想反转标签的颜色。
这是我按钮的代码:(因为我觉得我的描述不够清楚):
<Button Template="{StaticResource OnMouseOver}" ToolTip="Release" >
<StackPanel Orientation="Horizontal">
<ContentControl Template="{StaticResource Release}"/>
<Label Content="Release" Foreground="#457345" />
</StackPanel>
</Button>
这是我在按下按钮和鼠标悬停在按钮上时更改按钮属性的方式:
<ControlTemplate TargetType="Button" x:Key="OnMouseOver">
<Border x:Name="border" Background="Transparent">
<ContentPresenter ContentSource="Content" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background" Value="#A1CCA1"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="border" Property="Background" Value="#AFD8AF"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
为了记录,我曾尝试为我的唱片公司做类似ControlTemplate 之类的事情,但没有奏效,当我这样做时,我的唱片公司就消失了。
你能帮我吗?
【问题讨论】:
标签: c# .net wpf xaml expression-blend