2019独角兽企业重金招聘Python工程师标准>>>

网站的外观是否美观将直接决定其受欢迎的程度,这就意味着网站在开发过程中设计和实现美观实用的用户界面是非常重要的。

在ASP.net 2.0之前主要是用样式表css来实现外观设计。但在ASP.Net 2.0之后,提供了《主题》的新功能。

概述:

组成元素:由外观、级联样式表、图像和其他资源组成,至少包含外观,它是在网站或web服务器上的特殊目录定义的。

1、外观是主题的核心内容,用于定义页面中服务器控件的外观,包含各个控件的属性设置。

创建外观文件:(外观文件的后缀名:.skin)

在创建控件的外观时一般是默认的,想让不默认显示就得设置SkinID属性,然后在网页中进行调用。

在网站中添加主题的时:在文本的头部标签中添加:Theme="主题的名称"引用主题。

注:如果在控件代码中设置了与控件外观相同的属性,则页面最终显示以控件外观的设置效果为主。

例如:在外观文件中添加

1 <asp:TextBox runat="server" Text="Hello World" BackColor="#FF0C0" BorderColor="#FFC080"  Font-Size="12pt"
2          ForeColor="#C04000"  Width="194px" />
3  <asp:TextBox  SkinID="textboxSkin" runat="server" Text="Hello World" BackColor="Red"
4              BorderColor ="Olive" BorderStyle="Dashed" Font-Size="15pt" Width="224px"/>

在网站中添加两个textbox控件:

 1  <div>
 2     <table >
 3         <tr>
 4             <td style="width:100px">
 5                 默认外观
 6             </td>
 7             <td style="width:247px">
 8                 <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
 9             </td>
10         </tr>
11         <tr>
12             <td style="width:100px">命名外观</td>
13             <td style="width:247px">
14                 <asp:TextBox ID="TextBox" runat="server" SkinID="textboxSkin"></asp:TextBox>
15             </td>
16         </tr>
17     </table>
18     </div>

显示的结果:


2、为主题添加css样式。

主题的样式表主要用于设置页面和普通HTML控件的外观样式。【主题中的css样式表示自动作为主题的一部分加以应用的】

 1 body {
 2     text-align:center ;
 3     color:yellow;
 4     background-color:navy;
 5 }
 6 a:link{
 7     color:white;
 8     text-decoration:underline ;
 9            }
10 a:visited{
11     color:white;
12     text-decoration:underline;
13
14 }
15 a:hover{
16     color:fuchsia;
17     text-decoration:underline;
18     font-style:italic;
19 }
20 input{
21     border-color:yellow;
22 }

在页面中调用

 1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="主题练习2.aspx.cs" Inherits="东腾科技官网.主题.主题练习2"
 2      Theme ="主题样式表"%>
 3 <!DOCTYPE html>
 4 <html xmlns="http://www.w3.org/1999/xhtml">
 5 <head runat="server">
 6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 7     <title>为主题添加css样式</title>
 8 </head>
 9 <body>
10     <form id="form1" runat="server">
11     <div>
12     为主题添加css样式表
13         <table>
14             <tr>
15                 <td style="width:100px">
16                     <a href="主题练习.aspx">东腾科技</a>
17                 </td>
18                 <td style="width:100px">
19                     <a href ="主题练习.aspx">东腾科技</a>
20                 </td>
21             </tr>
22             <tr>
23                 <td style="100px">
24                     <input id="Button1" type="button" value ="button" />
25                 </td>
26             </tr>
27         </table>
28     </div>
29     </form>
30 </body>
31 </html>


3、应用主题

一、指定和禁用主题

不仅可以对网页或者网站应用主题,还可以对全局应用主题。

1.为单个页面指定主题可以将@page指令的Theme或者styleSheeTTheme属性设置为要使用的主题的名称:

<%@page Theme ="ThemeName"%>或<%@Page StyleTheme="ThemeName"%>

禁用单个页面的主题,只要将@Page指令的EnableTheming属性设置成false即可。<%@Page EnableTheming="false"%>

如果想禁用单个控件的主题,只要将控件的EnableTheming属性设置为false即可。<asp:Button id="Button1" runat="server" Enable Theming="false"/>

2.位应用程序指定和禁用主题

为了快速的为整个网站的所有页面设置相同的主题,可以设置web.config文件中<pages>配置节的内容:

1 <congfiguration>
2   <system.web>
3      <pages theme="ThemeName"></pages>
4 </system.web>


4.动态添加主题

 1  public   void Page_PreInit(Object sender,EventArgs e)
 2         {
 3             string t = "动态主题1";
 4             if(Request.QueryString["t"]!=null )
 5             {
 6                 Page.Theme = Request.QueryString["t"].ToString();
 7             }
 8             //string theme = "动态主题1";
 9             //if (Request.QueryString["theme"]==null )
10             //{
11             //    theme = "动态主题1";
12             //}
13             //else
14             //{
15             //    theme = Request.QueryString["theme"];
16             //   // theme = "动态主题1";
17             //}
18             //Page.Theme = theme;
19             //ListItem item = drop1.Items.FindByValue(theme);
20             //if (item != null)
21             //{
22             //    item.Selected = true;
23             //}
24         }

 protected void drop1_SelectedIndexChanged(object sender, EventArgs e){if (drop1.Text=="主题一"){Response.Redirect("动态添加主题?t=动态主题1");}if (drop1.Text=="主题二"){Response.Redirect("动态添加主题.aspx?t=动态主题2");}}}

 1 <body>
 2     <form id="form1" runat="server">
 3     <div >
 4     <h2>
 5         动态添加主题
 6     </h2>
 7     </div>
 8       <p>
 9           <asp:Label ID="label1" runat="server" Text="选择主题:"></asp:Label>
10           <asp:DropDownList ID="drop1" runat="server" OnSelectedIndexChanged="drop1_SelectedIndexChanged" >
11               <asp:ListItem Text="主题一"></asp:ListItem>
12               <asp:ListItem Text="主题二"></asp:ListItem>
13           </asp:DropDownList>
14
15           <asp:HyperLink ID="hyper1" runat="server" Text="返回"  ></asp:HyperLink>
16       </p>
17         <p>
18             <asp:Label ID="label2" runat="server" Text="默认外观:"></asp:Label>
19             <asp:TextBox ID ="TextBox1" runat="server"   ></asp:TextBox>
20         </p>
21         <p>
22             <asp:Label ID="label3" runat="server" Text="命名外观:"></asp:Label>
23             <asp:TextBox ID ="TextBox2" runat="server" SkinID="textboxSkin"  ></asp:TextBox>
24         </p>
25
26         <asp:LinkButton ID="LinkButton1" runat="server" style="z-index: 1; left: 10px; top: 178px; position: absolute">LinkButton</asp:LinkButton>
27
28         <asp:Button ID="Button1" runat="server" style="z-index: 1; left: 118px; top: 193px; position: absolute" Text="Button" />
29
30     </form>
31 </body>
32 </html>

转载于:https://my.oschina.net/dongteng/blog/684362

关于ASP.NET 中的主题相关推荐

  1. ASP怎样定义应用主题服务器,ASP.NET 4权威指南 目录

    目录 前  言 致  谢 第一部分 ASP.NET开发基础 第0章 预备课:学习从这里开始 2 0.1 认识Microsoft.NET 2 0.2 ASP.NET的特点 3 0.3 ASP.NET的版 ...

  2. 在 ASP.NET 中执行 URL 重写

    在 ASP.NET 中执行 URL 重写 发布日期: 8/23/2004 | 更新日期: 8/23/2004 Scott Mitchell 4GuysFromRolla.com 适用范围: Micro ...

  3. ASP.NET 中的正则表达式

    引言 Microsoft®.NET Framework 对正则表达式的支持是一流的,甚至在 Microsoft® ASP.NET 中也有依赖正则表达式语言的控件.本文介绍了深入学习正则表达式的基础知识 ...

  4. 关于ASP.NET 中站点地图sitemap 的使用【转xugang】

    关于ASP.NET 中站点地图sitemap 的使用 SiteMapPath 控件简介 SiteMapPath 控件是一种站点导航控件,反映了SiteMap 对象提供的数据.它提供了一种定位站点的方式 ...

  5. ASP.NET中App_Code,App_Data等文件夹的作用

    ASP.NET中App_Code,App_Data等文件夹的作用 1. Bin文件夹 Bin文件夹包含应用程序所需的,用于控件.组件或者需要引用的任何其他代码的可部署程 序集.该目录中存在的任何.dl ...

  6. FCKeditor 在ASP.Net 中的使用说明

    FCKeditor 在ASP.Net 中的使用说明 FCKeditor 是一个运行在浏览器上的 JavaScript 应用程序.他可以不依赖任何服务器端语言运行.不过,更好的使用方法是你使用一种服务器 ...

  7. 在ASP.NET中实现Url Rewriting

    概要 分析如何使用微软提供的ASP.NET来对动态产生的URL地址进行网址重写. 网址重写是实现一种截取网址请求并将其进行处理后重新指向到一个指定的网址的过程.作者本人在对各种实现网址重写的技术进行研 ...

  8. 在ASP.Net中使用FCKeditor

     在ASP.Net中使用FCKeditor 在ASP.Net中使用FCKeditor 翻译:linqingfeng 日期:2006-5-8 原文地址:http://wiki.fckeditor.net ...

  9. asp.net中各种类型文件解析 收藏

    asp.net中各种类型文件解析 收藏 ASP.NET的页面文件是*.aspx,每个页面对应一个*.resx资源文件和一个*.aspx.cs的代码文件. *.resx是资源文件.每个页面都有一个资源文 ...

最新文章

  1. TCP实现在不同局域网下的两台电脑网络通信(Python实现)
  2. 4.windows环境下如何安装memcached教程(转载+自己整理)
  3. JavaWeb学习总结(十三):使用Session防止表单重复提交
  4. 『设计模式』以为是个王者,后来班主任来了!设计模式--二五仔的观察者模式
  5. 大屏数据可视化解决方案(上)
  6. Dart基础-变量与类型
  7. AI架构师:深度学习框架、部署上线及应用,一文梳理
  8. PHP自定义数组转Json字符串函数
  9. day4:非参数统计及其检验方法(无sas代码)
  10. NMEA0183协议中的GGA语句解析
  11. 互联网+创新创业大赛项目计划书,个人原创你学会了吗?
  12. 关于python中矩阵相乘需要注意的事情
  13. 永城2021高考成绩查询,永城中考成绩查询2021
  14. 公式图片转换成Word格式
  15. 翻译:俄国卫星GLONASS 简介 天基全球导航卫星系统 (GNSS)
  16. 从小白踏上程序员之路
  17. Jetpack Compose——Icon(图标)的使用
  18. 文件服务器 ip白名单,如何将百度云加速的IP段加入到服务器IP白名单中
  19. move lob会不会影响其他索引状态?
  20. 微服务架构—优雅停机方案

热门文章

  1. java返回特定下标元素_java基础--输出数组中指定元素的下标
  2. fullcalendar php,日历插件fullcalendar+php的使用教程 — 读取json数据
  3. php文本文件操作,文本文件操作的php类
  4. 在html中写js提示错误,页面HTML标签优化
  5. php 其他页面获取session_PHP五十个提升执行效率的小技巧,和常见问题
  6. linux多线程访问共享资源,多个线程访问共享对象和数据
  7. MySQL建表两个单引号报错_极客起源 - geekori.com - 问题详情 - mysql建表报错,查手册看不懂,求解?...
  8. 利用Maven逆向工程生成mybatis映射文件
  9. php header 404 nginx,ThinkPHP在nginx下怎么设置?路由统统404,疯了~
  10. dorado 7 怎么样_一点点奶茶怎么样?消费者眼中的网红奶茶