欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > asp.net >内容正文

asp.net

小心ASP.NET 2.0 的Skin特性伤害到您!

发布时间:2025/3/16 asp.net 44 豆豆
生活随笔 收集整理的这篇文章主要介绍了 小心ASP.NET 2.0 的Skin特性伤害到您! 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
众所周知,.NET Framework 2.0为ASP.NET 2.0带来很多令人兴奋而又激动人心的特性(Feature),包括主从页(MasterPage)、异步页、回调等一大堆新的技术。但今天我要讲的,是其中一个对最终用户非常有价值的特性-主题(Skin)。
        在VS.NET 2005中使用Skin是非常容易的,过程我就不提了。但是如果没有深入了解其中的一个特点,它可能让您走很多弯路。下面是我遇到的一个问题,花了一个下午才找到原因所在:
        我有一个ASP.NET 2.0的网站项目,我在项目中使用了Skin和Web部件。在定义一个Skin时,我先定义一个CatalogZone里包含一个部件PageCatalogPart,这个部件可显示页面中所有存在并关闭状态的Web部件,并允许您加入这些Web部件到页面中。为CatalogZone设置好各种样式后将这些代码Copy到一个存放在AppThemes文件夹下的Skin定义文件中。默认情况下只需要删除其中的ID属性即可,在页面中应用(Page.Theme = YourThemeName)时,ASP.NET 2.0会自动套用其中的颜色、字体等样式。做完上面的一切后,我按下了F5键,一起都按我想象的方式运转起来了,看起来很不错,不是吗?
        在一切就绪后,我发现我还需要一个Web部件DeclarativeCatalogPart,它代表目录中的Web部件定义。通过这个Web部件来管理目录中的Web部件定义并使您可以根据这些定义产生多个实例在页面上。当我把DeclarativeCatalogPart放置到CatalogZone部件上并运行起来时,发现并没有出现页目录(5)这个选项,于是我想啊想,调啊调,最后才想起问题可能在Skin中。于是打开那个Skin文件,把里面的 <ZoneTemplate> 去掉后再次运行,一切OK。
        问题已经找到并解决了,但原因是什么呢?留给各位自己去思考。

转载于:https://www.cnblogs.com/Johnson/archive/2006/06/07/419161.html

总结

以上是生活随笔为你收集整理的小心ASP.NET 2.0 的Skin特性伤害到您!的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。