Windows 8 处理多屏幕大小windows 8 metro应用程序的字体大小

Windows 8 处理多屏幕大小windows 8 metro应用程序的字体大小,windows-8,microsoft-metro,Windows 8,Microsoft Metro,我有一个字体大小为14的文本。 在较小的屏幕上它是可见的,但在较大的屏幕上它会变小。 我该如何处理这个问题? 在android上,我们有SP,它可以根据屏幕调整字体大小。 windows 8中是否有类似的功能?我假设您使用的是XAML 因此,您应该从以下内容开始: <Page.Resources> <x:Double x:Key="MyFontSize" /> <Style TargetType="TextBlock" x:Name="Standar

我有一个字体大小为14的文本。
在较小的屏幕上它是可见的,但在较大的屏幕上它会变小。
我该如何处理这个问题?
在android上,我们有
SP
,它可以根据屏幕调整字体大小。

windows 8中是否有类似的功能?

我假设您使用的是XAML

因此,您应该从以下内容开始:

<Page.Resources>
    <x:Double x:Key="MyFontSize" />
    <Style TargetType="TextBlock" x:Name="StandardText">
        <Setter Property="FontSize" Value="{StaticResource MyFontSize}" />
    </Style>
</Page.Resources>

<TextBlock Style="{StaticResource StandardText}">Hello World</TextBlock>
Double _FontSize;
if (Windows.UI.ViewManagement.ApplicationView.Value
    == Windows.UI.ViewManagement.ApplicationViewState.FullScreenPortrait)
{
    // based on portrait
    if (this.RenderSize.Height > 2000)
        _FontSize = 30;
    if (this.RenderSize.Height > 1000)
        _FontSize = 20;
    else
        _FontSize = 10;
}
else
{
    // based on landscape
    if (this.RenderSize.Height > 1500)
        _FontSize = 30;
    if (this.RenderSize.Height > 1000)
        _FontSize = 20;
    else
        _FontSize = 10;
}
this.Resources["MyFontSize"] = _FontSize;

除非用户更改您的监视器,否则在加载应用程序时您检测到的任何内容将始终保留

我在做这方面的研究。 我知道了两件不同的事情。
一个是视图框,另一个是逻辑DPI。

这将完全满足您的需要

<Viewbox>
    <TextBlock>Hello World</TextBlock>
</Viewbox>

你好,世界

在MSDN论坛上查看此帖子:-ViewBox可能是您的答案,如果确实是您想要的行为,我尝试在XAML中使用ViewBox,但它显示错误(使用c#)您可以共享您的代码吗?我已经实现了ViewBox,它可以正常工作。ViewBox在横向/填充/纵向视图中可以正常工作,但在快照视图中不能。。因此,如果您不想在Snap View中显示任何内容,那么这个东西应该可以解决您的问题。实际上,如果您在多个显示器之间移动metro(商店应用程序),屏幕大小将发生变化。令人震惊;就在昨天,我得出了同样的结论。也许我在脑海中读到了你的评论(精神上的溢出)。谢谢你的回答。。如果你是微软的人,你能看看这个问题吗