字重属性无法生效[Windows Phone 8.1 Runtime]

3

这个问题非常微不足道:在通用商店应用中,TextBlock的字重属性FontWeight无法使用。我创建了一个示例项目(通用应用程序),并在WindowPhone的MainPage中添加了像下面这样的TextBlock

<TextBlock HorizontalAlignment="Center"
           VerticalAlignment="Center"
           FontSize=20
           FontWeight="Thin"
           Text="Test text should be thin in runtime." />

在设计师中,一切看起来都很好,但是当我在模拟器/设备上部署应用程序时,测试文本并没有变细!这是正常的。请查看屏幕截图: VS2013的截图 如您所见,在设计师中,文本非常细(非常漂亮!)。然而,在运行模拟器中,文本的粗细是正常的。为什么会这样?我该如何解决?感谢您提前的帮助。
1个回答

5

在WP8.0 Silverlight中,它的表现相当不错,但在WP8.1运行时,您还需要对其应用<Style>。就像这样


<Grid x:Name="ContentPanel">
    <StackPanel>
        <TextBlock HorizontalAlignment="Left" VerticalAlignment="Center" FontSize="20" Text="Test text should be normal in runtime."/>

        <!-- apply the a style like BodyTextBlockStyle -->
        <TextBlock HorizontalAlignment="Left" VerticalAlignment="Center" FontSize="20"
             Text="Test text should be thin in runtime."
             FontWeight="Thin" Style="{StaticResource BodyTextBlockStyle}"/>
    </StackPanel>
</Grid>

enter image description here


你一定在开玩笑吧.. 非常感谢!我只有两个快速问题。1. 为什么需要应用那种风格?2. 你是怎么想出那个解决方案的?我花了几个小时试图解决它,但从未想过尝试应用一些“随机”的风格。 - Malutek
@Malutek,实际上我是倒推解决了你的问题。我的应用程序中大多数TextBlock已经与Style相关联。所以第一次就对我起作用了。所以我只是比较了你的代码和我的代码之间的差异,发现添加Style才是让它工作或不工作的关键。你可以使用任何样式,我只是选择了BodyTextBlockStyle。 - Chubosaurus Software
您IP地址为143.198.54.68,由于运营成本限制,当前对于免费用户的使用频率限制为每个IP每72小时10次对话,如需解除限制,请点击左下角设置图标按钮(手机用户先点击左上角菜单按钮)。 - Malutek

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接