关于ASP.NET 中的主题

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

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

在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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/543131.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

傅里叶变换matlab案例,基于matlab的傅里叶变换

例子1作用&#xff1a;使用傅里叶变换找出隐藏在噪声中的信号的频率成分。(指定信号的参数&#xff0c;采样频率为1 kHz&#xff0c;信号持续时间为1秒。)Fs 1000; % 采样频率T 1/Fs; % 采样周期L 1000; % 信号长度t (0:L-1)*T; % 时间向量%%形成一个信号&#xff0c;包含振…

WEB渗透—PHP反序列化(八)

Web渗透—PHP反序列化 课程学习分享&#xff08;课程非本人制作&#xff0c;仅提供学习分享&#xff09; 靶场下载地址&#xff1a;GitHub - mcc0624/php_ser_Class: php反序列化靶场课程&#xff0c;基于课程制作的靶场 课程地址&#xff1a;PHP反序列化漏洞学习_哔哩…

如何部署 Hyperic ,使得从内网监测外网服务器

2019独角兽企业重金招聘Python工程师标准>>> 环境介绍&#xff1a; 外网服务器&#xff1a; www.InnovateDigital.com 用户名/密码 test/test 内网服务器&#xff1a;192.168.1.125 操作系统都是 Centos 7 64bit 过程&#xff1a; 下载 Hyperic 5.8.5 &#xff0c…

tcp 发送 最大数据量_网络基础知识夯实总结(三):TCP协议

近期分享的网络知识包括HTTP协议、DNS协议、HTTPS协议、TCP协议、IP协议、TCP/IP、Web攻击及其他协议。今天内容是TCP协议。TCP协议1. 传输层2. 作用提供可靠的字节流服务3. 大块数据分割成报文段(segment)4. 三次握手1) 发送端发带SYN标志的数据包给对方。2) 接收端收到后&…

安卓开发语言php,go语言支持安卓开发吗

go语言支持安卓开发。使用golang开发android需要下载安装gomobile&#xff0c;然后有两种开发方式&#xff0c;分别为&#xff1a;1、原生应用开发&#xff1b;2、混合绑定开发。本教程操作环境&#xff1a;windows10系统、GO 1.11.2、thinkpad t480电脑。大概14年的时候go语言…

解决python连接mysql,UTF-8乱码问题

在测试“Bluemix云端数据库服务ClearDB MySQL使用示例———Python开发投票程序”的程序时&#xff0c;从MySQL中读取的中文输出到网页显示都是问号&#xff0c;如下图&#xff1a; 解决方法&#xff1a; 产生乱码问题&#xff0c;通常都是由于几方面的编码不统一导致的&#x…

Crawler - 如何爬取列表后进行文章的爬取

2019独角兽企业重金招聘Python工程师标准>>> 已知BUG&#xff1a;(version:5) 1-爬取后生成的XML默认编码是Java环境决定导入数据库可能出问题 方法修改xml编码后导入 重点CL 和 CI命令 CL 是爬取List列表 会通过file生成文件 CI 中file是CL执行后生存的File文件 CL…

程序员出差是去干什么_让我来告诉你,35岁以上的人都在干什么!

欢迎关注专栏&#xff1a;里面定期分享Android和Flutter架构技术知识点及解析&#xff0c;还会不断更新的BATJ面试专题&#xff0c;欢迎大家前来探讨交流&#xff0c;如有好的文章也欢迎投稿。Android高级进阶​zhuanlan.zhihu.com让我来告诉你&#xff0c;35岁以上的人都在干什…

opencv入门_【OpenCV入门之十八】通过形态学操作提取水平与垂直线

小白导读学习计算机视觉最重要的能力应该就是编程了&#xff0c;为了帮助小伙伴尽快入门计算机视觉&#xff0c;小白准备了【OpenCV入门】系列。新的一年文章的内容进行了很大的完善&#xff0c;主要是借鉴了更多大神的文章&#xff0c;希望让小伙伴更加容易理解。如果小伙伴觉…

【译】NoClassDefFoundError和ClassNotFoundException的不同

本文翻译自&#xff1a;Difference between NoClassDefFoundError vs ClassNotFoundExcepiton in Java 如果JVM或者ClassLoader在加载类时找不到对应的类&#xff0c;就会引发NoClassDefFoundError和ClassNotFoundException&#xff0c;这两种错误都非常严重。由于不同的ClassL…

Ubuntu上安装Robomongo及添加到启动器

到目前为止&#xff0c;Robomongo仍是MongoDB最好的客户端管理工具&#xff0c;如需在Ubuntu上安装Robomongo&#xff0c;可直接从官网下载.tar.gz压缩包进行解压&#xff0c;然后直接运行bin目录下的robomongo文件即可启动界面。例如我将下载下来的.tar.gz压缩包解压到/usr/lo…

pagefile.sys and heberfil.sys

dub 删除heberfil.sys大文件的方法 方法1:Windows/system32中的cmd.exe 输入 powercfg -h off&#xff0c;即可关闭休眠功能&#xff0c;同时 Hiberfil.sys 文件也会自动删除。 方法2:运行命令gpedit.msc打开策略组 依次打开Computer Configuration——Administrative Template…

加密生成指定长度_3分钟短文 | PHP伪随机Token生成器,实地测试,效果感人!

引言我们经常可能会用到邀请码&#xff0c;邮件验证码&#xff0c;或者需要使用unique 字符串标记用户属性的情况。今天我们且不说高深的“全局唯一ID”的生成方案&#xff0c;我们说一个简单的&#xff0c;如何生成一个唯一的&#xff0c;随机的&#xff0c;数组字母组成的字符…

《Java高级程序设计》期末作业【2】-进度安排

计算器项目计划进度安排&#xff1a; 项目成员&#xff1a;潘世林 何青 柴晓光 张峰转载于:https://www.cnblogs.com/panshilin/p/5578496.html

python find不区分大小写_牛鹭学院:Python基础了解

本文来自牛鹭学院学员&#xff1a;田雨python初印象Python 是一种解释型语言&#xff1a; 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。Python 是交互式语言&#xff1a; 在一个 Python 提示符 >>> 后直接执行代码。Python 是面向对象语言: 这意味着…

Spring+Quartz(一)

2019独角兽企业重金招聘Python工程师标准>>> Quartz是一个非常优秀的任务调度引擎&#xff0c;详情请见官网:http://www.quartz-scheduler.org/ 而Spring很好地集成了Quartz&#xff0c;为企业级的任务调度提供了方便。 下面先看一个实现了Job接口的任务HelloWorldJ…

linux sudo 版本,Linu下如何升级当前sudo版本

Sudo 的全称是“superuserdo”&#xff0c;它是Linux系统管理指令&#xff0c;允许用户在不需要切换环境的前提下以其它用户的权限运行应用程序或命令&#xff0c;通常是以 root 用户身份运行命令&#xff0c;以减少 root 用户的登录和管理时间&#xff0c;同时提高安全性。该漏…

LaTeX技巧205:使用split输入多行公式技巧

我们在输入多行公式的时候&#xff0c;split&#xff0c;array&#xff0c;multiline&#xff0c;align&#xff0c;aligned等等都是我们可以选用的环境&#xff0c;这里介绍split的使用方法。演示效果图&#xff1a;演示代码&#xff1a;\documentclass{article}\pagestyle{em…

linux纯内核直接用吗,Linux:为啥内核有的变量没有初始化就敢直接使用?

一、问题为啥内核有的变量没有初始化就敢直接使用&#xff1f;二、分析看上图&#xff0c;其中的5747行的变量nid的确没有定义&#xff0c;就直接使用了&#xff0c;这么做没有问题吗&#xff1f;其实大家仔细看一下&#xff0c;5765行是一个宏&#xff0c;到内核源码去找该宏的…

sdr 软件_【火腿专题】购买软件定义无线电(SDR)还是传统无线电台?追求欲望无止境...

软件定义无线电与传统无线电选择作者&#xff1a;Onno VK6FLAB有一段时间&#xff0c;我一直在解释软件无线电(SDR)的一些内部工作方式是如何运作的&#xff0c;以便深入了解原因和方法的细节。这种探索是在一个新世界的背景下进行的&#xff0c;在这个世界里&#xff0c;有无数…