Я использую ресурс изображения для логотипа и фона программы. Когда моя страница приложения изменила время, пользовательский интерфейс не является гладким.
Я использовал BitmapCache CacheMode, но пользовательский интерфейс не является гладким.
<Storyboard x:Key="SlideLeft" Completed="SlideLeft_Completed" FillBehavior="Stop"
Duration="0:0:1">
<DoubleAnimation Storyboard.TargetProperty="(RenderTransform).(TranslateTransform.X)"
From="0"
Duration="0:0:1"
To="{Binding RelativeSource={RelativeSource FindAncestor,
AncestorType=UserControl, AncestorLevel=1},
Converter={StaticResource invertDoubleConverter}, Path=ActualWidth}" />
<DoubleAnimation Storyboard.TargetProperty="(RenderTransform).(TranslateTransform.X)"
Duration="0:0:1"
From="{Binding RelativeSource={RelativeSource FindAncestor,
AncestorType=UserControl, AncestorLevel=1}, Path=ActualWidth}" To="0" />
</Storyboard>
Приведенный выше код является простым кодом перехода страницы.
https://www.codeproject.com/Articles/1151795/WPF-Transition-of-User-Control
Ниже приведен код моего файла xaml.
<Grid Style="{DynamicResource BaseGrid}">
<Grid.Resources>
<BooleanToVisibilityConverter x:Key="visibilityConverter"/>
</Grid.Resources>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="5*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.4*"/>
<ColumnDefinition Width="0.6*"/>
</Grid.ColumnDefinitions>
<Image Margin="20"
Grid.Column="1"
Stretch="Fill">
<Image.Source>
<BitmapImage UriSource="{Binding Logo.MediaPath, Source={x:Static settings:ProgramSettings.Instance}}"/>
</Image.Source>
</Image>
</Grid>
<MediaElement Name="myMediaElement" Margin="20"
Source="{Binding CurrentAd, TargetNullValue={x:Null}, FallbackValue={x:Null}, IsAsync=True}"
Grid.Row="1" Grid.Column="0"
MediaEnded="MyMediaElement_MediaEnded"
LoadedBehavior="Play"
Stretch="Fill">
</MediaElement>
Как сделать плавную анимацию пользовательского интерфейса.