首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为样式通用Windows应用程序配置

为样式通用Windows应用程序配置
EN

Stack Overflow用户
提问于 2016-04-28 21:37:38
回答 1查看 180关注 0票数 0

我有一个UWP应用程序,我已经为按钮和文本块创建了不同的样式,在不同的页面中使用。我曾假设我将能够将应用于样式本身。但是,Visual中的setter似乎只能直接应用于特定的控件。是否有任何方法将Visual应用于样式元素。我有60个文本块在我的页面,都有一个特定的字体大小。我是否必须为这些控件中的每个人指定一个不同的字体大小才能使用Visual,还是有更简单的方法来做到这一点?

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-28 21:59:56

我认为您应该采取一种不同的方法:将60 TextBlock的字体大小绑定到属性,并在代码后面触发条件时更新+通知它。

在XAML中:

代码语言:javascript
运行
复制
<TextBlock FontSize={"Binding MyFontSize"}/>
<!-- 60 of your textblock here ...... -->

在您的ViewModel中,我使用MVVM通知属性更改事件:

代码语言:javascript
运行
复制
private double _MyFontSize = null;

    public double MyFontSize
    {
        get
        {
            return _MyFontSize;
        }
        set
        {
            Set(ref _MyFontSize, value);
        }
    }

在代码后面:在结构体中:

代码语言:javascript
运行
复制
this.SizeChanged += LoginPanel_SizeChanged;

private void LoginPanel_SizeChanged(object sender, SizeChangedEventArgs e)
    {
        if(e.NewSize.Width >= 600)
        {
            (this.DataContext as MyViewModel).MyFontSize = 20;
        }
        else
        {
            (this.DataContext as MyViewModel).MyFontSize = 16;
        }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36925923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档