.NET2005中怎样同时禁用主题中的.skin和.css

不知道是怎么回事,在web.config中配置完全局使用主题后,单独某个页面不想应用主题,使用下面的代码是不行的:
    web.config中的配置:   
< pages theme="DefaultThems">< /pages>
    
    要禁用主题的页面要添加的代码:
< %@ EnableTheming="false" %>
    
    按道理,页面这样设置之后,这个页面就不应该再应用主题了,可是实际上是不行的。
    
Question:
    我使用XMLHTTP实现的不刷新处理页xmlhttp.aspx。这个页面中是没有任何html代码的,所以使用主题后就会出现这样的错误:使用主题 css 文件要求页上有标头控件。(例如 < head runat="server" />)
    于是就想到禁用xmlhttp.aspx页面的主题,加上EnableTheming="false"之后还是报这个错误。郁闷.
Solution:
    仔细根据错误信息想了一想,又在Page标签中添加了:StylesheetTheme="" 。再试成功了!
    体会体会才知道:原来EnableTheming="false"只能禁用了主题既.skin文件,而主题中的样式文件.css却无法禁用。
    不过还有个问题,因为我使用的xmlhttp.ascx控件,而不是.aspx,然后添加到MOSS中,所以又不能在Page标签中添加StylesheetTheme="" ,所以只有在xmlhttp.ascx控件中添加下面代码:
< head runat="server">< /head>

然后在xmlhttp.ascx.cs文件中再清除掉所有的html标签:
this.Response.Clear();
this.Response.ClearHeaders();
this.Response.ClearContent();
this.Response.Write("");
this.Response.End();

转了一圈,问题终于解决了。
posted @ 2008-02-18 14:54  looping  阅读(245)  评论(0编辑  收藏  举报