Назначение анимации нескольким объектам в WPF - PullRequest
1 голос
/ 25 февраля 2012

Я пойду прямо к проблеме. В моем коде есть массив эллипсов, а именно
Ellipse[] players = new Ellipse[11];
а затем я использую DoubleAnimationWithKeyFrames, чтобы анимировать эти эллипсы на холсте, используя

sboard.Children.Add(anim);
sboard.Children.Add(anim2);
Storyboard.SetTargetName(anim, players[player - 1].Name);
Storyboard.SetTargetName(anim2, players[player - 1].Name);
Storyboard.SetTargetProperty(anim, new PropertyPath(Canvas.LeftProperty));
Storyboard.SetTargetProperty(anim2, new PropertyPath(Canvas.TopProperty));

Но я хочу переместить некоторые текстовые блоки с этими эллипсами. Как я могу назначить одинаковые anim и anim2 этим TextBlocks?

1 Ответ

1 голос
/ 25 февраля 2012

Поместите Ellipse и TextBlock в контейнер (сетка, панель стека, холст и т. Д.) Или создайте UserControl и анимируйте его вместо Ellipse.

Пример:

<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
x:Class="WpfApplication4.UserControl1"
x:Name="UserControl">

<StackPanel x:Name="LayoutRoot">
    <Ellipse Fill="#FFF4F4F5" Height="100" Stroke="Black" Width="100"/>
    <TextBlock TextWrapping="Wrap" Text="Some Text Here" FontSize="32" HorizontalAlignment="Center"/>
</StackPanel></UserControl>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...