В моем XAML я получил Style
я использую для подключения к динамически создаваемых Path
объектов:Как разморозить/предотвратить зависание свойства динамического созданного объекта со стилем?
<Style x:Key="styleBladePiece" TargetType="{x:Type Path}">
<Setter Property="Data" Value="..." />
<Setter Property="Fill">
<Setter.Value>
<SolidColorBrush Color="{StaticResource BladeFillColor1}" />
</Setter.Value>
</Setter>
</Style>
В моем коде позади я создаю много из них так:
Path pathBladePiece = new Path();
pathBladePiece.Style = (Style)this.FindResource("styleBladePiece");
Теперь на потом шаг я пытаюсь оживить Color
в Fill
свойства Path
объекта, например, так:
ColorAnimation a = new ColorAnimation();
a.Duration = new Duration(new TimeSpan(0, 0, 0, 0, 400));
a.To = (Color)this.FindResource("BladeFillColor2");
pathBladePiece.Fill.BeginAnimation(SolidColorBrush.ColorProperty, a);
Но оказывается, что свойство Fill
заморожено до этого времени. В конструкторе, а также во время выполнения я получаю: InvalidOperationException: property "Color" on "System.Windows.Media.SolidColorBrush" can not be animated, because the object is sealed or locked.
При отладке XDecProc.exe: A first chance exception of type 'Microsoft.Expression.Markup.DocumentModel.StatePersistingException' occurred in Microsoft.Expression.DesignSurface.dll" when debugging the designer.
Могу ли я разморозить или предотвратить его замораживать?
Не работает, и объект все еще заморожен. – modiX
Мой плохой, не для стиля, а для 'BladeFillColor1'. – Sinatr
Итак, я попробовал ' # FF767676 ' в моих ресурсах или ' 'на моем контроле XAML. Первый сохраняет проблему, второй - исключение синтаксиса XAML. –
modiX