asp.net .skin和.cssasp.net 之间的主要区别是什么?
.skin是IDE的新增强功能.我一直在和你一起工作.css.可用的.skin是不是.css
谢谢,saj
A_N*_*lsi 20
在skin文件中,您可以设置asp.net控件的属性.
例如,
<asp:TextBox runat="server" Width="200"/>
Run Code Online (Sandbox Code Playgroud)
应用程序中的所有TextBox控件的宽度都为200.
你可以给它一个名字,只有你喜欢的控件可以设置它们来应用皮肤,例如,
<asp:TextBox SkinID="MultiLineTextBox" runat="server" TextMode="MultiLine" Height="240"/>
Run Code Online (Sandbox Code Playgroud)
现在在添加TextBox控件的网页中,您可以将其SkinID设置为"MultiLineTextBox",如下所示,
<asp:TextBox runat="server" SkinID="MultiLineTextBox"/>
Run Code Online (Sandbox Code Playgroud)
因此它将TextMode继承为MultiLine,Height继承为240.
要使用皮肤,您必须在App_Themes文件夹下为您的应用程序添加一个主题,然后在那里添加皮肤文件,现在要在您的页面中使用此主题,您必须将页面的EnableTheming属性设置为true,StylesheetTheme或Theme to你主题的名字.您还可以在配置文件中设置此属性.
在页面aspx中设置主题,
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" EnableTheming="true" StylesheetTheme="Your Theme Name" %>
Run Code Online (Sandbox Code Playgroud)
在web.config中设置主题,
<configuration>
<system.web>
<pages styleSheetTheme="Your Theme Name"></pages>
</system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)
请注意,就这两件事实际做的而言,存在相当大的差异..skin文件中设置的任何属性都将复制到所有页面控件.使用层叠样式表的一个优点是信息被加载和缓存一次.(并且可以应用于多个网页.)外观文件可能导致页面膨胀,因为每次呈现页面时,外观文件中设置的所有属性都必须与每个受影响的控件合并.
此外,ASP.NET主题.skin文件的默认行为是覆盖受影响的控件的属性(这可能是一个意外的行为).例如,如果Width为文件中的所有ASP:标签设置属性.skin,则使用外观文件的所有ASP:标签的Width属性都将设置为.skin文件的属性,而不管控件的个别Width设置如何.若要避免此行为,ASP.NET StyleSheetTheme可用于允许控件级属性覆盖全局.skin属性.
| 归档时间: |
|
| 查看次数: |
11294 次 |
| 最近记录: |