В настоящее время у меня есть ControlTemplate, к которому я пытаюсь добавить скользящую анимацию.Когда я запускаю анимацию, она работает отлично, за исключением того, что когда я уменьшаю содержимое, я бы хотел, чтобы его родительский контейнер также уменьшал.
В настоящее время масштабируемый элемент управления находится внутри панели стека, у меня также естьпопытался поместить его в Grid и установить для его RowDefinition значение Auto, но когда содержимое уменьшается, у меня остается внешний элемент управления, который остается одинакового размера в обоих случаях.
Вот что я сейчас делаю.анимация работает нормально, ее внешняя панель стека не изменяет размеры.Стоит отметить, что это только детали проблемы, панель стека фактически содержит другое содержимое, поэтому я не могу просто запустить анимацию в корне.
<StackPanel x:Name="_root">
<StackPanel.Resources>
<Storyboard x:Key="_expand">
<DoubleAnimation
Duration="0:0:0.25"
From="0"
To="1"
Storyboard.TargetName="_borderContent"
Storyboard.TargetProperty="(FrameworkElement.RenderTransform).(ScaleTransform.ScaleY)"
/>
</Storyboard>
<Storyboard x:Key="_collapse" >
<DoubleAnimation
Duration="0:0:0.25"
From="1"
To="0"
Storyboard.TargetName="_borderContent"
Storyboard.TargetProperty="(FrameworkElement.RenderTransform).(ScaleTransform.ScaleY)"
/>
</Storyboard>
</StackPanel.Resources>
<Border
x:Name="_borderContent"
Grid.Row="1" BorderBrush="{TemplateBinding ExpandStroke}" BorderThickness="1" >
<Border.RenderTransform>
<ScaleTransform ScaleX="1" ScaleY="1"/>
</Border.RenderTransform>
<!-- Contains the Content to be presented in the card-->
<ContentPresenter x:Name="_content">
</ContentPresenter>
</Border>
</StackPanel>