介绍
母版页(MasterPage)就相当于模板页,挺简单的,没什么好说的。基于母版页的常用的功能有:母版页和内容页之间信息的传递,在内容页中用FindControl方法找到内容页中的控件等。另外,母版页是可以嵌套的。
关键
在内容页的头部加上母版页的强类型引用


1、内容页传递数据到母版页 - 母版页创建一个公共方法,然后内容页通过“Master.方法”来调用这个公共方法
2、母版页传递数据到内容页 - 母版页创建一个公共事件来传递数据,然后内容页处理这个事件
3、内容页中用FindControl方法找到内容页中的控件 - 用“Master.FindControl("ContentPlaceHolder1").FindControl("你要查找的控件ID")”来查找
4、嵌套母版页 - 说起来麻烦,看源码吧
示例
主母板页
Site.master















次母板页
MasterPage/MasterPage.master



















MasterPage/MasterPage.master.cs






































内容页
MasterPage/Test.aspx













MasterPage/Test.aspx.cs








































OK
[源码下载]
介绍
使用 ASP.NET 2.0 的“主题”功能,可以将样式和布局信息分解为单独的文件组,统称为“主题”。然后,主题可应用于任何站点,影响站点中页和控件的外观。这样,通过更改主题即可轻松地维护对站点的样式更改,而无需对站点各页进行编辑。还可与其他开发人员共享主题。
关键
1、在web site中添加App_Themes文件夹,可以在每个主题文件加内添加.skin文件、.css文件(指定主题后会自动加载主题下所有.css文件)或者图片文件
2、在web.config的<system.web>元素下的<pages>元素下设置theme或者styleSheetTheme属性(针对全局);在页的@Page指令里设置Theme或者StylesheetTheme属性(针对当前页)
3、Theme定义的样式不可以覆盖;StylesheetTheme定义的样式可以覆盖
4、.skin文件里不设置SkinId则就是默认的,设置了SkinId后则对应控件的SkinId属性
5、动态修改Page的Theme要在Page_PreInit方法中实现
示例
Blue主题





Red主题





主题测试-Theme
Themes/Theme.aspx

























主题测试-StylesheetTheme
Themes/StylesheetTheme.aspx

























主题测试-动态加载主题
Themes/Dynamic.aspx

















Themes/Dynamic.aspx.cs
































OK
[源码下载]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义