有没有办法询问 aUIElement
以确定哪些 Storyboard 正在影响它?
例如,Storyboard
可以在许多地方定义资源(例如 Application.Resources、Window.Resources、Control.Resources)。如果您引用了受 a 影响的控件Storyboard
(例如 a RotateTransform
),有没有办法询问控件以发现它Storyboard
?
我不想要的是Storyboard
仅仅通过知道它的名字来获得它的引用。
有没有办法询问 aUIElement
以确定哪些 Storyboard 正在影响它?
例如,Storyboard
可以在许多地方定义资源(例如 Application.Resources、Window.Resources、Control.Resources)。如果您引用了受 a 影响的控件Storyboard
(例如 a RotateTransform
),有没有办法询问控件以发现它Storyboard
?
我不想要的是Storyboard
仅仅通过知道它的名字来获得它的引用。
没有直接的方法可以知道您要问什么,但是您可以使用以下代码:
假设“btn”是您要搜索的控件Storyboard
。
Button btn = new Button();
List<Storyboard> lst = new List<Storyboard>();
foreach (var item in this.Resources)
{
if (item is Storyboard)
{
Storyboard temp = item as Storyboard;
foreach (var animation in temp.Children)
{
if (animation.GetValue(Storyboard.TargetProperty) == btn)
{
lst.Add(temp);
}
}
}
}