Postupy: Animace krytí elementu nebo štětce
Pokud chcete, aby prvek architektury zesvětloval a ze zobrazení, můžete jeho vlastnost animovat Opacity nebo animovat Opacity vlastnost Brush (nebo štětce) použité k vykreslení. Animace neprůhlednosti elementu ztmavne a zmizí z pohledu, ale animace štětce použité k malování prvku umožňuje být selektivnější o tom, která část prvku zmizí. Můžete například animovat neprůhlednost štětce použitého k malování pozadí tlačítka. To by způsobilo, že pozadí tlačítka zmizí ze zobrazení a z pohledu, zatímco text zůstane zcela neprůhledný.
V následujícím příkladu jsou dvě tlačítka animovaná tak, aby zeslabily a nevypadaly ze zobrazení. Neprůhlednost prvního Button je animované z 1.0
více než 0.0
Duration pět sekund. Druhé tlačítko je také animované, ale neprůhlednost SolidColorBrush použitá k malování je Background animované místo neprůhlednosti celého tlačítka. Když je příklad spuštěný, první tlačítko se úplně zeslabí a zmizí ze zobrazení, zatímco pouze pozadí druhého tlačítka zmizí a zmizí ze zobrazení. Text a ohraničení zůstávají zcela neprůžné.
Příklad
<!-- OpacityAnimationExample.xaml
This example shows how to animate the opacity of objects,
making them fade in and out of view. -->
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
WindowTitle="Opacity Animation Example" Background="White">
<StackPanel Margin="20">
<!-- Clicking this button animates its opacity. -->
<Button Name="opacityAnimatedButton">
A Button
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="opacityAnimatedButton"
Storyboard.TargetProperty="(Button.Opacity)"
From="1" To="0" Duration="0:0:5" AutoReverse="True" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
<!-- Clicking this button animates the opacity of the brush
used to paint its background. -->
<Button>
A Button
<Button.Background>
<SolidColorBrush x:Name="MyAnimatedBrush" Color="Orange" />
</Button.Background>
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="MyAnimatedBrush"
Storyboard.TargetProperty="(Brush.Opacity)"
From="1" To="0" Duration="0:0:5" AutoReverse="True" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
</StackPanel>
</Page>
V tomto příkladu byl vynechán kód. Úplná ukázka také ukazuje, jak animovat neprůhlednost Color uvnitř objektu LinearGradientBrush. Úplnou ukázku najdete v animaci neprůhlednosti ukázky elementu.
.NET Desktop feedback
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro