Silverlight 4 и вне браузера - PullRequest
       4

Silverlight 4 и вне браузера

4 голосов
/ 27 марта 2010

Кто-нибудь знает, возможно ли анимировать app.current.mainwindow.width, чтобы вы получили приятную анимацию с замедлением, если вы программно изменяете размер окна приложений OOB. Спасибо.

Ответы [ 2 ]

1 голос
/ 22 апреля 2010

Самый простой способ - добавить ползунок на свою страницу. Слайдер может быть свернут и используется только для легкой анимации. Анимируйте свойство 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;
}
1 голос
/ 05 апреля 2010

Вы должны проверить эту презентацию Channel 9 для настройки окна Chrome в поддержке вне браузера Ваше приложение требует повышенного доверия для настройки Chrome, но это может позволить вам делать то, что вы хотите.

...