Я пытаюсь решить проблему, когда я запускаю ColorAnimation в раскадровке, и значение «Кому» может быть предоставлено только статическим классом.
По сути, желаемый результат:
<ColorAnimation BeginTime="0:00:00" Duration="0:00:00.333"
Storyboard.TargetName="border"
Storyboard.TargetProperty="(Background).(SolidColorBrush.Color)"
To="{Binding XYZ, Source={x:Static ZZZ}}" />
Очевидно, что это приведет к сбою, поскольку привязки не могут быть помещены в значение To ColorAnimation.Я хотел бы рассмотреть возможность создания дубликата свойства статического класса в ресурсах ControlTemplate, чтобы вместо него можно было использовать {StaticResource}:
<ControlTemplate.Resources>
<Color x:Key="animation_to_value">{Binding ...}</Color>
</ControlTemplate.Resource>
Я не уверен, возможно ли это или какой правильный синтаксисБытьстатические ресурсы разрешаются после вставки цветов:
public App()
{
this.Resources["storyboard_to_value"] = Colors.Red;
this.Resources.MergedDictionaries.Add(GetDictionaryWithStoryboard());
}
Хотя это кажется излишним.Пожалуйста, сообщите.