Literal控件与Label控件的对比
来源:互联网 发布:python基础教程豆瓣 编辑:程序博客网 时间:2024/05/29 14:06
1、Literal的一般用法,与Label对比
MSDN上的解释:
使用 System.Web.UI.WebControls.Literal 控件在网页上保留显示文本的位置。Literal 控件与 Label 控件类似,但 Literal 控件不允许对所显示的文本应用样式。
可以通过设置 Text 属性,以编程方式控制在控件中显示的文本。
Literal Web 服务器控件介绍
HTML 元素添加到文本上。
容,创建上述简单垂直列表。如果使用 Label 控件,则该控件被包装在 HTML <span> 标记中。<span> 不以任何显而易见的方式影响该页的呈现。如果使用
Literal 控件,将不添加 <span> 标记,这使您的代码更为简单。
您无法使用客户端代码确定控件的位置。
<body> <form runat="server"> <H1><asp:Literal id="Headline" runat=server /></H1> </form></body>
将代码添加到页面上以在运行时设置控件的 Text 属性。
// C#private void Page_Load(object sender, System.EventArgs e){ Headline.Text = "New Web Site Announced";}
2、Literal控件的巧妙用法,这里我把它做成了一个类似Menu控件,实现菜单的功能。
很简单,就是设置其Text值就可以了,假如Literal的ID为“litMenu”,那么代
码如下
litMenu.Text ="<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> <tr> <td class=\"Tab1\" style=\"width:114px;\" onclick=\"window.location.href='/onlineUserView.aspx?type=1';\">在线人员</td> <td class=\"Tab2\" style=\"width:114px;\" onclick=\"window.location.href='/SMS/SMSList.aspx?type=2';\">收件箱</td> <td class=\"Tab1\" style=\"width:114px;\" onclick=\"window.location.href='/SMS/SMSList.aspx?type=3';\">草稿箱</td> <td class=\"Tab1\" style=\"width:114px;\" onclick=\"window.location.href='/SMS/SMSList.aspx?type=4';\">已发送</td> <td class=\"Tab1\" style=\"width:115px;\" onclick=\"window.location.href='/SMS/SMSList.aspx?type=5';\">已删除</td></tr></table>"
解析:很明显,这里是把其Text的值设置为了一个Table而已,而在Table中的单元格进行菜单的点击链接。呵呵好玩吧!
3、Literal控件作为通用性Menu
public static string[] sName4 = new string[5] { "在线人员","收件箱", "草稿箱", "已发送", "已删除" }; //定义菜单数组的名称 public static string[] sUrl4 = new string[5] { "/onlineUserView.aspx?type=1", "/SMS/SMSList.aspx?type=2", "/SMS/SMSList.aspx?type=3","/SMS/SMSList.aspx?type=4", "/SMS/SMSList.aspx?type=5" }; //定义每个菜单对应的链接的数组/// <summary> /// 通用Tab /// </summary> /// <param name="litMenu">Literal的ID</param> /// <param name="sName">菜单数组名称</param> /// <param name="sUrl">链接的数组的名称</param> /// <param name="iSelect">选中的第几个菜单项</param> /// <param name="sParameter"></param> public static void LoadMenuCommon(System.Web.UI.WebControls.Literal litMenu, string[] sName, string[] sUrl, int iSelect,string sParameter) { System.Text.StringBuilder sb = new StringBuilder(); sb.Append("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">") .Append("<tr>"); for (int i = 0; i < sName.Length; i++) { string sClassName = (i + 1) == iSelect ? "Tab2" : "Tab1"; //选中的菜单用CSS中的类"Tab2",否则用"Tab1" int iWidth = i == (sName.Length - 1) ? 115 : 114; sb.Append(string.Format("<td class=\"{0}\" style=\"width:{4}px;\" onclick=\"window.location.href='{2}{3}';\">{1}</td>", sClassName, sName[i], sUrl[i],sParameter, iWidth)); } sb.Append("</tr></table>"); litMenu.Text = sb.ToString(); }这里的“Tab2”与“Tab1”只是一个CSS类样式,用于标识选中菜单与未选中菜单样式的区别
.Tab1
{ background-image: url(../Images/Tab1.gif); font-weight: bold; color: #064570; width: 120px; height: 27px; text-align: center; background-repeat: no-repeat; cursor: hand;}.Tab2
{ background-image: url(../Images/Tab2.gif); font-weight: bold; color: #064570; width: 120px; height: 27px; text-align: center; background-repeat: no-repeat; cursor: hand;}
最后一步,就是调用了,在其他的web页,调用如下
Menu.LoadMenuCommon(LitMenu, Menu.sName4, Menu.sUrl4, 1, string.Empty);
- Literal控件与Label控件的对比
- Literal控件与Label控件的区别
- Literal 控件与 Label 控件的区别
- Literal与Label Web 服务器控件
- 控件Literal和Label区别
- Literal控件与TextBox控件结合的自定义复合控件。
- Literal与label的区别
- Literal与label的区别
- literal控件的用法
- Literal控件的用法
- Literal控件的用法
- Literal控件的用法
- Literal 控件
- Literal控件
- Label控件的使用
- JavaFX 的 Label 控件
- Literal控件,写东西的好创意
- ASP:Literal控件用法
- [经典面试题]最长01子串
- IOS设计模式第二篇之单例设计模式
- 各种Android Dialog创建及其监听事件实现
- LINUX下动态链接库dlopen dlsym dlclose函数使用说明
- Android SDK更新 Connection to http://dl-ssl.google.com refused 解决方法
- Literal控件与Label控件的对比
- Linux动态链接库.so文件的创建与使用
- 出现次数最多的数
- 新的开始
- BF算法及KMP算法总结
- ddms调试android性能
- java调用 javascript
- vs2010下C++调用lib或dll文件
- 在Mac OSX 10.10 上安装opencv