当前位置:  开发笔记 > 编程语言 > 正文

是否可以在XAML中设置有选择地影响控件的样式?

如何解决《是否可以在XAML中设置有选择地影响控件的样式?》经验,为你挑选了1个好方法。

我定义了以下样式:

    

我已经定义了一些网格,我有四个TextBlocks:

    
        Server
        IP
        Port
        Status
    

问题:我需要参考textBlockStyle四次.

问题:是否可以在内部WrapPanel或其他地方设置该样式一次而不重复对样式的引用?

也许是这样的:

    
        Server
        IP
        Port
        Status
    

我不是在寻找全球解决方案!我可以删除该x:Key="textBlockStyle"属性,但这会影响窗口中的所有 属性TextBlocks.我需要一个更具选择性的机制,但没有那个丑陋的代码重复.



1> Kent Boogaar..:

您有几个选项,按照它们的缩放程度排列.

选项1:在较低级别定义没有键的样式

您可以将资源粘贴到该WrapPanel级别,以便它只影响其中的控件WrapPanel:


    
        
    

    

注意缺少钥匙.这Style将适用于所有TextBlocks内WrapPanel.

选项2:使用键定义样式,而不是在较低级别定义样式

如果Style使用键定义更高级别,则可以Style在没有键的情况下在较低级别定义另一个级别,并将其Style基于较高级别的级别:


    
        
    

    
        
            




    
        
            
                
                    
                
            
        
    




    
        
            
        
    

现在,您可以根据需要在单独的词典中定义任意数量的样式集,然后有选择地将它们应用于元素树.

推荐阅读
ERIK又
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有