WPF:-フェードイン、ポップアップでユーザーコントロールを拡張する方法
質問
私は、ユーザーがボタンをクリックしたときに表示したいユーザーコントロールを持っています。 これは、AFポップアップコントロールを使用して、問題はありません。
しかし、私は0.5から同時に(XとYの両方)1.2およびバック1.0にユーザ制御フェードイン及びスケールを有するたい。
どのように私はそれを行うのですか?
解決
WPFポップアップが透明でないので、フェードインと実際に動作しませんフェードアウト。あなたは、不透明度、あなたが望むすべてを設定することができますが、それは事を変更されません。ただし、ツールチップで遊ぶことができます。これは、ポップアップにかなり近いです。とにかく、ここであなたが始めるために何かます:
<UserControl x:Class="WpfApplication1.UserControl1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<UserControl.Style>
<Style>
<Style.Triggers>
<EventTrigger RoutedEvent="FrameworkElement.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity" Duration="00:00:02" From="0" To="1" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<Trigger Property="FrameworkElement.Visibility" Value="Collapsed">
<Setter Property="FrameworkElement.Opacity" Value="0"/>
</Trigger>
</Style.Triggers>
</Style>
</UserControl.Style>
<Border x:Name="border" BorderBrush="Blue" BorderThickness="3" CornerRadius="3" Padding="3" Background="Orange"
Width="175" Height="175">
<TextBlock Text="Sample" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
どこかにウンチ、私はちょうどデモの目的のために、同じボタンにツールチップを使用しています:
<Button Click="OnButtonClick" Content="click to see popup">
<Button.ToolTip>
<ToolTip x:Name="popup" IsOpen="False" Background="Transparent" BorderBrush="Transparent"
Placement="Bottom">
<WpfApplication1:UserControl1/>
</ToolTip>
</Button.ToolTip>
</Button>
の後ろOnButtonClickコードのため、私は複数回、それをクリックすることができますので、私はちょうどポップアップをtoggleedます:
private void OnButtonClick(object sender, RoutedEventArgs e)
{
popup.IsOpen = !popup.IsOpen;
}
他のヒント
WPFのポップアップが透明性を扱うことができ、単に次のように設定します。
<Popup AllowsTransparency="True" PopupAnimation="Fade">
所属していません StackOverflow