条件が真であれば、バインディングを使ってグリッドの背景を変更したいと思います。
私はMVVM light frameworkを使用しています。アニメーショングリッドの背景色
<Grid.Style>
<Style TargetType="Grid">
<Style.Triggers>
<DataTrigger Binding="{Binding SuccessBooked, UpdateSourceTrigger=PropertyChanged}"
Value="True">
<!--Setter Property="Background" Value="LimeGreen" />-->
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation To="LimeGreen"
Storyboard.TargetName="ActualWeightBg"
Storyboard.TargetProperty="Background"
FillBehavior="Stop"
Duration="0:0:12"/>
<!--<DoubleAnimation Storyboard.TargetProperty="Opacity"
From="0.0" To="1.0" Duration="0:0:15"/>-->
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
</DataTrigger>
<DataTrigger Binding="{Binding LowerBooked, UpdateSourceTrigger=PropertyChanged}"
Value="True">
<Setter Property="Background" Value="Red" />
</DataTrigger>
<DataTrigger Binding="{Binding HigherBooked, UpdateSourceTrigger=PropertyChanged}"
Value="True">
<Setter Property="Background" Value="DarkOrange" />
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
コンパイラは文句:
私はStoryboard.TargetName="ActualWeightBg"
削除する場合:
<ColorAnimation To="LimeGreen"
Storyboard.TargetProperty="Background"
FillBehavior="Stop"
Duration="0:0:12"/>
を、私はこの例外を取得:
Exception thrown: 'System.InvalidOperationException' in PresentationFramework.dll
私はその背景色が5秒間変化することを望んでいます。その後、標準色に戻す必要があります。そして、あなたがここで見るとおり
Cannot resolve all property references in the property path 'Background.Color'. Verify that applicable objects support the properties.
:背景色が設定されていない時に更新
次に、期待どおりに動作します。
背景色を設定せずにアニメーション背景色を設定する方法を教えてください。 ユーザーコントロールです。
ありがとうございます、それは魅力的です。 –
エラーが発生しました。 'プロパティパス' Background.Color 'のすべてのプロパティ参照を解決できません。該当するオブジェクトがプロパティをサポートしていることを確認します。ときどき動作しない場合があります(エラーがスローされます)。 –
私は問題がどこにあるのか知っていますが、問題の解決方法はわかりません。私は私のポストを更新します。 –