Попытка использовать пользовательское свойство пользовательского элемента управления в анимации раскадровки XAML приводит к ошибке «Не удается разрешить TargetProperty» - PullRequest
1 голос
/ 17 марта 2019

Я пытаюсь включить пользовательский элемент управления MyControl в анимацию раскадровки и анимировать пользовательское свойство MyProperty этого элемента управления.Раскадровка содержится в другом пользовательском элементе управления.

Однако при использовании приведенного ниже кода Visual Studio Blend 2017 выдает следующую ошибку в режиме конструктора раскадровки:

Исключение: нетустановленные компоненты были обнаружены.Не удается разрешить TargetProperty MyProperty для указанного объекта.

Кажется, проблема в пользовательском свойстве, поскольку замена его на что-то вроде Width работает нормально.Кроме того, включение EnableDependentAnimation="True" не решает проблему.

XAML:

<UserControl.Resources>
    <Storyboard x:Name="MyStoryboard">

        <DoubleAnimationUsingKeyFrames
            EnableDependentAnimation="True"
            Storyboard.TargetName="myControl"
            Storyboard.TargetProperty="MyProperty"
        >
            <EasingDoubleKeyFrame KeyTime="0" Value="0"/>
            <EasingDoubleKeyFrame KeyTime="0:0:2.0" Value="100"/>
        </DoubleAnimationUsingKeyFrames>

    </Storyboard>
</UserControl.Resources>

<Grid>
    <local:MyControl x:Name="myControl" Width="22" Height="22" MyProperty="0" />
</Grid>

Я пытаюсь анимировать свойство пользовательского элемента управления UWP (Windows 10), введите double:

public sealed partial class My Control : UserControl

public double MyProperty
{
    get
    {
        return myProperty;
    }
    set
    {
        myProperty = value;
        Redraw();
    }
}
...