C# WPF ControlTemplate-为椭圆触发不同的背景色
我正在学习使用WPF,我遇到了一些问题。我正在创建一个自定义按钮,当我将鼠标移到该按钮上时,该按钮将更改背景颜色。此时,我有以下代码:C# WPF ControlTemplate-为椭圆触发不同的背景色,c#,wpf,templates,triggers,C#,Wpf,Templates,Triggers,我正在学习使用WPF,我遇到了一些问题。我正在创建一个自定义按钮,当我将鼠标移到该按钮上时,该按钮将更改背景颜色。此时,我有以下代码: <ControlTemplate x:Key="myButtonTemplate" TargetType="{x:Type Button}"> <Grid> <Ellipse x:Name="outerElipse" VerticalAlignment="Stretch" Horizontal
<ControlTemplate x:Key="myButtonTemplate" TargetType="{x:Type Button}">
<Grid>
<Ellipse x:Name="outerElipse" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<Ellipse.Fill>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Green" Offset="0"/>
<GradientStop Color="Purple" Offset="1"/>
</LinearGradientBrush>
</Ellipse.Fill>
</Ellipse>
<Ellipse VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Margin="20">
<Ellipse.Fill>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="LightBlue" Offset="0"/>
<GradientStop Color="Blue" Offset="1"/>
</LinearGradientBrush>
</Ellipse.Fill>
</Ellipse>
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" TextBlock.Foreground="White"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Fill" Value="Black"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
问题是,我不知道如何在第一个(外)椭圆上触发它。
下一行还提供了一个错误“成员“填充”不可识别或不可访问:
<Setter Property="Fill" Value="Black"/>
将外部elipse的名称分配给Setter的TargetName属性 例:
将外部elipse的名称分配给Setter的TargetName属性 例:
<Setter Property="Fill" Value="Black" TargetName="outerElipse"/>