1

次のバインディングComboBoxを持つプロパティがあります。Opacity

Opacity="{Binding ElementName=stackPanel, Path=IsMouseOver, Converter={StaticResource mouseOverConverter}}"

基本的に、IsMouseOverプロパティが true の場合、ComboBoxOpacity1 であり、それ以外の場合は 0.4 です。

次に、このアニメーションを に適用しますComboBox

private void AnimateComboBox()
{
  DoubleAnimation da = new DoubleAnimation();
  da.From = 0.4;
  da.To = 1;
  da.Duration = TimeSpan.FromSeconds(0.8);
  da.AutoReverse = true;

  ComboClassList.BeginAnimation(ComboBox.OpacityProperty, da);  
}

それはうまくいきますが、その後のバインディングはComboBoxもう機能しません。のOpacity上にマウスを移動しても、 は変化しませんStackPanel。アニメーションによってバインディングが壊れるのはなぜですか? Snoop は、Snoop で赤く強調表示されていますが、バインディングはまだ存在すると言います。

4

1 に答える 1