主题类似于层叠样式表(CSS),因为它们都可以为Web页面定义各种样式。但主题比CSS更进一步,它允许给应用程序的页面应用皮肤样式、图像甚至CSS文件或其它资源,可以在应用程序、页面或服务器控件级别上应用ASP.NET中的主题。
Theme属性和styleSheetTheme属性的区别:
如果控件自身定义了样式,Theme属性设置的外观会覆盖
已定义的外观,而styleSheetTheme
属性设置的外观不会覆盖已定义的外观样式。
禁用主题
用主题(.skin)使用Page指令的EnableTheming属性指定页面是否使用主题(.skin)。
使用控件的EnableTheming属性指定特定控件是否使。
动态加载主题
必须在页面上静态控件的Page_PreInit事件触发之前设置Page属性的主题。如果使用动态控件,就应在把该控件添加到Controls集合中之前,设置Theme属性。同样在设置控件的skinid属性时,也需要遵循同样的规则。