Silverlight Style (二) 自定义样式在后台代码中应用
上一章我们了解到了如何在页面或者App.xml文件中创建自定义样式,以及如何在页面文件中应用自定义的样式。本章将介绍如何在后台应用自定义样式,以及如何在后台自定义样式。
一、应用已有的自定义样式:
拿上一章我们自定义的样式举例:
<Application xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation
xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml
x:Class="MyApp.App">
<Application.Resources>
<Style x:Name="MyTextBoxStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="10"></Setter>
<Setter…></Setter>
</Style>
</Application.Resources>
</Application>
那么我们如何通过后台编码将这一样式应用到控件上呢?其实很简单,只需要一行代码即可:
textBlock.Style = Application.Current.Resources["MyTextBoxStyle"] as Style;
上面的样式是定义在App.xml中的全局样式,如果我们需要应用定义在页面中的样式,只需要稍作调整,代码如下:
textBlock.Style = Resources["MyTextBoxStyle"] as Style;
二、自定义样式:
了解了如何应用在页面文件中定义的样式,朋友们大概会问到,那么我们如何在后台直接定义样式呢?
下面我们就来介绍如何在后台自定义样式。
通过在学习如何在页面中定义样式,我们了解到,Silverlight的样式包含如下结构:
<Style x:Name="MyTextBoxStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="10"></Setter>
</Style>
所以,很显然,我们在后台定义样式也需要用到这两个对象,Style 和 Setter,下面是一段简短的示例代码:

btnStyle.TargetType =typeof(System.Windows.Controls.Control);
Setter setterRed =new Setter(System.Windows.Controls.Control.BackgroundProperty, new SolidColorBrush(Colors.Red));
btnStyle.Setters.Add(setterRed);
this.btnClick.Style = btnStyle;
大家可以看到,按钮的背景色变成了红色。当然,根据不同的需求,在一个样式中可以添加多个Setter。
关于简单样式的自定义和应用我们就介绍到这里,在以后的章节中,特别是在Chart的处理时我们需要更多的运用样式,
在后面的章节中我们会详细介绍更多与样式相关的知识。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)