كيفية منعك المنفصلة Gridlength من "السيارات" إلى "*"؟
-
19-09-2019 - |
سؤال
أحتاج إلى تحريك هذه الخاصية باستخدام Storyboard
وبعد هل يكتب الرسوم المتحركة الخاصة بك هو أفضل خيار؟
المحلول
لا، من الممكن تماما باستخدام XAML القياسية:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" x:Name="col0"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.Resources>
<Storyboard x:Key="sbCol0ToAuto">
<ObjectAnimationUsingKeyFrames
BeginTime="0" Duration="0"
Storyboard.TargetName="col0" Storyboard.TargetProperty="Width">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<GridLength>*</GridLength>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</Grid.Resources>
...
</Grid>
وحتى العودة إلى السيارات:
<DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static GridLength.Auto}">
لا تنتمي إلى StackOverflow