【发布时间】:2017-11-28 19:51:35
【问题描述】:
我正在使用视觉状态自适应触发器来根据有效的屏幕分辨率更改页面外观。这很好用,但我不能让它为 ListView 项目工作。
我的 ListView 看起来像这样:
<ListView x:Name="listView" >
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock FontSize="20" Text="{Binding MyItem}"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我可以在 XAML 中静态更改 TextBlock 字体大小。但我不知道如何在 VisualState setter 目标中引用它。作为自动生成的孩子,我不能给 TextBlock 一个名字。我的视觉状态代码如下。我放了???我想在哪里引用 ListView TextBlock 项 FontSize。
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState x:Name="NormalStateReadView">
<!-- VisualState to be triggered when window width is <720 effective pixels -->
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="0" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="???" Value="20" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
<VisualStateGroup>
<VisualState x:Name="NormalStateReadView">
<!-- VisualState to be triggered when window width is >=720 effective pixels -->
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="720" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="???" Value="30" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
任何帮助表示赞赏。
【问题讨论】:
-
我可以在Grid中设置TextBlock的字体大小
标签: c# xaml uwp windows-10-universal