如何在给定FrameworkElement的情况下检索CompositionEffect?

时间:2019-07-18 16:16:17

标签: uwp windows-composition-api xaml-composition

我正在尝试连锁效果,并将其设置在Image控件( TestImage )上,如下所示:

<asp:DropDownList runat="server" ID="ddlDriver" AppendDataBoundItems="true">
        <asp:ListItem Enabled="true" Text="Please Select" Value="-1"></asp:ListItem>
</asp:DropDownList>

我的目标是在以后检索该效果,以便我可以读取该效果的一些值。如何仅使用TestImage控件和Composition层来获得效果?

1 个答案:

答案 0 :(得分:0)

我使用附加属性解决了我的问题,因为此功能本身不受支持:

internal static SpriteVisual GetSprite(DependencyObject obj) => (SpriteVisual)obj.GetValue(SpriteProperty);

internal static void SetSprite(DependencyObject obj, SpriteVisual value) => obj.SetValue(SpriteProperty, value);

/// <summary>
/// Composition Sprite attached to a FrameworkElement.
/// </summary>
internal static readonly DependencyProperty SpriteProperty =
    DependencyProperty.RegisterAttached(
        "Sprite",
        typeof(SpriteVisual),
        typeof(MyAnimations),
        new PropertyMetadata(null));