我有一个看起来像这样的 ListView:
<ListView x:Name="MyList" ItemsSource="{Binding Path=MyItems}">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock x:Name="Title" Text="{Binding Path=TitleCategory}"/>
<TextBlock x:Name="Body" Text="{Binding Path=BodySummary}" Style="{StaticResource BodyTextStyle}"/>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我应用于该 TextBlock 的 BodyTextStyle 将宽度设置为 600 像素,并且在 FullScreenLandscape 中一切正常。但是,当我切换到 SnappedView 时,由于屏幕宽度减小,文本会被剪掉。通常我会这样设置宽度:
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Width)" Storyboard.TargetName="Body">
<DiscreteObjectKeyFrame KeyTime="0" Value="300"/>
</ObjectAnimationUsingKeyFrames>
但这会产生运行时崩溃,我假设是因为我引用的项目位于 ItemTemplate 中。当我进入 SnappedView 时,更改 ListView 中每个项目的宽度的正确方法是什么?