<Border Name="ItemBorder" Margin="5 5 0 5" BorderBrush="Black" BorderThickness="1" Height="75" Width="75">
<Border.Background>
<SolidColorBrush x:Name="ItemBorderBrush" Color="LightBlue"/>
</Border.Background>
<ContentPresenter/>
</Border>
<ControlTemplate.Triggers>
<EventTrigger RoutedEvent="someEvent">
<BeginStoryboard>
<Storyboard TargetName="ItemBorderBrush" TargetProperty="Color" Duration="0:0:1" >
<!--Storyboard TargetName="ItemBorder" TargetProperty="Background.Color" Duration="0:0:1"> -->
<ColorAnimation To="White"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</ControlTemplate.Triggers>
Trataré de explicar mi pregunta con claridad. El nombre del objetivo Storyboard, cuando es "ItemBorder" (la línea comentada) funciona intermitentemente. A veces me sale un error que indica que no se puede encontrar el nombre "ItemBorder" en el alcance.Cuál es el significado de x: Nombre en xaml (WPF) y su uso con Storyboard
Decidí seguir un estilo de un ejemplo de MSDN y cambiar la propiedad de color directamente en el pincel, en lugar de tener el objetivo del guión gráfico como el borde y cambiar el color del pincel del borde por propiedad (la línea comentada). Esto parece funcionar
Sin embargo, Name="ItemBorderBrush"
no se compila porque Name
no es una propiedad de SolidColorBrush
así que utilizo x:Name="ItemBorderBrush"
Tanto Name
y x:Name
son aceptados para la Frontera. ¿Por qué es esto?
¿Qué significa la x:
(cómo es diferente de x:Name
Name
), y por qué habría que tiene la propiedad de Name
frontera sólo funcionan con el guión gráfico a veces?
ver también [En WPF, ¿cuáles son las diferencias entre la x:? Nombre y atributos nombre] (http://stackoverflow.com/questions/589874/in-wpf-what-are- the-differences-between-the-xname-and-name-attributes) –