ASP.NET2.0 快速入门 ----默认中的主题外观

原文:http://www.asp.net/QuickStart/aspnet/doc/themes/skins.aspx
 


默认情况下,外观文件中的控件定义应用于受主题影响的应用程序的页中同一类型的所有控件。但是,您可能希望同一类型的控件在应用程序的不同部分中具有不同的外观。例如,您可能希望
Label 控件的文本在一个位置显示为粗体,在另一个位置显示为斜体。在主题中使用命名外观可以实现此功能。


默认外观与命名外观

  

通过创建不同的控件定义,可以在外观文件中为同一类型的控件定义不同的样式。可以将这些控件定义的某个单独的 SkinID 属性设置为您选择的名称,然后对页中要应用此特定外观的控件设置此 SkinID 值。如果没有 SkinID 属性,则应用默认外观(未设置 SkinID 属性的外观)。下面的示例演示 Label Calendar 控件的不同外观。请注意,页中具有指定的 SkinID 的控件获取的样式集与默认外观不同。









在主题的外观文件中,命名外观可通过多种方式进行组织。由于一个主题可以包含多个外观文件,因此可以将命名外观划分到不同的文件中,其中每个外观文件都包含具有相同
SkinID 的多个控件定义。例如,可以在一个主题中包含三个外观文件,其中每个外观文件都根据特定 SkinID 值命名: /WebSite1

  /App_Themes

    /MyTheme

      Default.skin

      Red.skin

      Blue.skin

还可以按控件类型对外观文件分组,其中每个外观都包含特定控件的一组外观定义: /WebSite1

  /App_Themes

    /MyTheme

      GridView.skin

      Calendar.skin

      Label.skin

您甚至可以根据站点的组成部分划分外观文件,例如: /WebSite1

  /App_Themes

    /MyTheme

      HomePage.skin

      DataReports.skin

      Forums.skin

一个 Theme 目录下可以有多个外观文件,这一功能为您提供了组织的灵活性。该功能还允许您轻松与他人共享外观定义,或从一个主题向另一个主题复制外观定义,而无需在主题中编辑其他外观文件。

posted @ 2006-04-19 11:34  启明星工作室  阅读(1235)  评论(0编辑  收藏  举报