dav*_*ave 1 silverlight wpf xaml
我的应用程序中的某些键颜色作为动态资源加载.除了ColorAnimation之外,大多数控件都可以正常工作.为此,它抛出一个异常:
无法将属性"To"中的值转换为"System.Nullable"1 [[System.Windows.Media.Color,PresentationCore,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35]]'类型的对象.'#FF93CF65'不是属性'To'的有效值.
我在样式中使用完全相同的资源,在这种情况下它可以正常工作.有问题的xaml如下所示:
<Style x:Key="ChildWindowButtonBarButtonStyle" TargetType="{x:Type Button}">
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorder}" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="#ffffb14c" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00.8" Storyboard.TargetProperty="Opacity" From="1" To=".5" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00.4" Storyboard.TargetProperty="Opacity" From=".5" To="1" />
<ColorAnimation BeginTime="00:00:00" Duration="00:00:00.2" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" To="Green"/>
<ColorAnimation BeginTime="00:00:00.3" Duration="00:00:00.4" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" To="{StaticResource ButtonBorder}"/>
</Storyboard>
</BeginStoryboard>
</Trigger.ExitActions>
</Trigger>
</Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)
有没有人对此有任何想法?
- 戴夫
我只是尝试过,这很有效
<Color x:Key="ButtonBorderColor">Green</Color>
<SolidColorBrush x:Key="ButtonBorder" Color="{StaticResource ButtonBorderColor}" />
<Style x:Key="ChildWindowButtonBarButtonStyle" TargetType="{x:Type Button}">
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorder}" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="#ffffb14c" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:04" Storyboard.TargetProperty="Opacity" From="1" To=".5" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:04" Storyboard.TargetProperty="Opacity" From=".5" To="1" />
<!--<ColorAnimation BeginTime="00:00:00" Duration="00:00:02" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" To="Green"/>-->
<ColorAnimation BeginTime="00:00:00" Duration="00:00:04" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" To="{StaticResource ButtonBorderColor}"/>
</Storyboard>
</BeginStoryboard>
</Trigger.ExitActions>
</Trigger>
</Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3206 次 |
| 最近记录: |