0

ストーリーボードにターゲットが含まれている場合にストーリーボードをアニメーション化する方法の例がいくつかあることは知っています。たとえば、ボタンの幅や長方形の色をアニメーション化します。

ストーリーボードを使用してプロパティをアニメーション化したいのですが、そのプロパティはたまたま他のものにバインドされています。その結果、次のようなものがあります。

XAML:

<Window.Resources>
    <Storyboard x:Key="sbVolume">
        <DoubleAnimation Storyboard.TargetProperty="{Binding SbVolumeValue}" To="40">           
        </DoubleAnimation>
    </Storyboard>

背後にあるコード: (INotifyPropertyChanged も実装しています)

    double _SbVolumeValue;
    public double SbVolumeValue
    {
        get
        {
            return _SbVolumeValue;
        }
        set
        {
            _SbVolumeValue = value;
            OnPropertyChanged("SbVolumeValue");
        }
    }

そのストーリーボードをアニメーション化すると、例外が発生します:

'System.Windows.Media.Animation.DoubleAnimation' のターゲットが指定されていません。

ターゲットをアニメーション化するのではなく、自分のプロパティをアニメーション化したいだけです。どうやってやるの?

4

1 に答える 1

0

発生しているエラーについてはTargetName、ストーリーボードが実際に適用されている XAML コードを表示する必要があります...

その間、私は確信しています

    Storyboard.TargetProperty="{Binding SbVolumeValue}" 

... は有効なコードではありません! これは、ターゲットの依存関係プロパティの名前で指定され、!を介してバインドされた値ではないはずです。Binding

だから何か...

    Storyboard.TargetProperty="Width" 

...は正しいですが、何か....

    Storyboard.TargetProperty="EmployeeName" 

...依存関係プロパティではないかのように正しくありません。

私は明確であることを願っています!

于 2012-05-16T07:35:16.590 に答える