4

プログラムでoobアプリウィンドウのサイズを変更すると、app.current.mainwindow.widthをアニメーション化して、簡単に素敵なアニメーションを作成できるかどうかを知っている人はいますか。ありがとう。

4

2 に答える 2

1

ブラウザー外サポートでウィンドウクロームをカスタマイズするには、このChannel9プレゼンテーションを確認する必要があります。アプリケーションはクロムをカスタマイズするために高い信頼を必要としますが、これはあなたがやりたいことをすることを可能にするかもしれません。

于 2010-04-05T14:42:34.097 に答える
1

最も簡単な方法は、ページにスライダーコントロールを追加することです。スライダーは折りたたむことができ、アニメーション化するための簡単なプロパティを持つためにのみ使用されます。スライダーのValueプロパティをアニメーション化します。スライダーのValueChangedイベントで、ウィンドウ幅を更新します。これを行うには、推力を上げる必要があります。

これは次のようになります。

Xaml

<UserControl.Resources>
  <Storyboard x:Name="Storyboard1">
    <DoubleAnimation Duration="0:0:1" To="750" 
                     Storyboard.TargetProperty="(RangeBase.Value)" 
                     Storyboard.TargetName="slider1">
      <DoubleAnimation.EasingFunction>
        <BounceEase EasingMode="EaseOut"/>
      </DoubleAnimation.EasingFunction>
    </DoubleAnimation>
  </Storyboard>    
</UserControl.Resources>

<Grid x:Name="LayoutRoot" Background="Green">
  <Button Width="50" Height="32" Click="Button_Click">Test</Button>
  <Slider Visibility="Collapsed" VerticalAlignment="Bottom" 
          x:Name="slider1" Maximum="1000" 
          ValueChanged="slider1_ValueChanged" />
</Grid>

コードビハインド

private void Button_Click(object sender, RoutedEventArgs e)
{
    Storyboard1.Begin();
}

private void slider1_ValueChanged(object sender, 
                                  RoutedPropertyChangedEventArgs<double> e)
{
    Application.Current.MainWindow.Width = e.NewValue;
}
于 2010-04-22T07:57:23.253 に答える