画面の真ん中から直径500pxくらいまで伸びる円が欲しいです。この円をアプリケーションのウィンドウとして機能させます (ユーザーは通常のウィンドウのようにドラッグします)。
これまでのところ、起動時のアニメーションで円を高さと幅 0 から 500 まで成長させることができます。それが保持されているウィンドウは透明に設定され、SizeToContent ="WidthAndHeight" に設定されます。含まれているウィンドウが円を囲んでいるため、これは良いことですが、これにより、円は画面の中心から成長しなくなり、中心から始まり、右と下に向かって成長します。
SizeToContent="WidthAndHeight" を持ちながら円を中心から大きくするにはどうすればよいですか?
これまでの私のコードは次のとおりです。
XAML
<Window x:Class="MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
WindowStyle="None"
AllowsTransparency="True"
Background="Transparent"
WindowStartupLocation="CenterScreen"
SizeToContent="WidthAndHeight">
<Window.Resources>
<Storyboard x:Key="EllipseExpand">
<DoubleAnimation From="0" To="500" Duration="0:0:5"
Storyboard.TargetName="MyCircle"
Storyboard.TargetProperty="Width"/>
<DoubleAnimation From="0" To="500" Duration="0:0:5"
Storyboard.TargetName="MyCircle"
Storyboard.TargetProperty="Height"/>
</Storyboard>
</Window.Resources>
<Ellipse Name="MyCircle" Fill="Red" Height="0" Width="0"/>
</Window>
コードビハインド
Imports System.Windows.Media.Animation
Class MainWindow
Public Sub WindowLoaded() Handles Me.Loaded
Dim ellipseExpand As Storyboard = FindResource("EllipseExpand")
ellipseExpand.Begin()
End Sub
End Class