ASP.NET中Label控件用法详解
label 控件提供了一种在 asp.net 网页中以编程方式设置文本的方法。当希望在运行时更改网页中的文本(比如响应按钮单击)时,通常可以使用 label 控件。
一、属性
label控件的常用属性及说明如表1所示。
表1 label控件常用属性及说明
属性 | 说明 |
---|---|
id | 控件的id名称 |
text | 控件显示的文本 |
width | 控件的宽度 |
visible | 控件是否可见 |
cssclass | 控件呈现的样式 |
backcolor | 控件的背景颜色 |
enabled | 控件是否可用 |
下面详细介绍label控件的一些重要属性。
1.id属性
id属性用来惟一标识label控件,程序开发人员在编程过程中可以利用id属性调用该控件的属性、方法和事件。可通过属性对话框对id属性进行设置,如图1所示。
图1 label控件属性设置
注意:
(1)label控件的属性设置也可以通过html代码实现,实现代码如下:
<asp:label id="label1" runat="server" text="label示例"
backcolor="#ff8000" bordercolor="blue"
cssclass="stylecs.css" font-names="宋体" font-size="9pt"
forecolor="black" height="13px" width="57px">
</asp:label>
(2)以下所有控件的属性都可以通过属性对话框进行设置,以后将不再赘述。
2.text属性
text属性用来设置label控件所显示的文本内容,如图1所示。
3.cssclass属性
在设置label控件的cssclass属性前,首先要在网站html设计页的“<head></head>”节中编写如下代码。
<link href="stylecs.css" rel="stylesheet" type="text/css"/>
然后在属性对话框中设置控件的cssclass属性为stylecs(stylecs为样式名)。
二、方法
label控件常用方法及说明如表2所示。
表2 label控件常用方法及说明
方法 | 说明 |
---|---|
applystyle | 将指定样式的所有非空白元素复制到web控件,改写控件的所有现有的样式元素 |
applystylesheetskin | 将页样式表中定义的样式属性应用到控件 |
copybaseattributes | 将style对象未封装的属性从指定的web服务器控件复制到从中调用此方法的web服务器控件 |
databind | 将数据源绑定到被调用的服务器控件及其所有子控件 |
focus | 为控件设置输入焦点 |
dispose | 使服务器控件得以在从内存中释放之前执行最后的清理操作 |
equals | 确定两个object实例是否相等 |
findcontrol | 在当前的命名容器中搜索指定的控件id |
gethashcode | 用作特定类型的散列函数 |
gettype | 获取当前实例的type |
hascontrols | 确定服务器控件是否包含任何子控件 |
mergestyle | 将指定样式的所有非空白元素复制到web控件,但不改写该控件现有的任何样式元素 |
referenceequals | 确定指定的object实例是否是相等的实例 |
renderbegintag | 将控件的html开始标记呈现到指定的编写器中 |
rendercontrol | 输出服务器控件内容,并存储有关此控件的跟踪信息(如果已启用跟踪) |
renderendtag | 将控件的html结束标记呈现到指定的编写器中 |
resolveclienturl | 将url转换为在请求客户端可用的url |
resolveurl | 将url转换为在请求客户端可用的url |
setrendermothoddelegate | 分配事件处理程序委托,以将服务器控件及其内容呈现到父控件中 |
tostring | 返回表示当前object的string |
说明:
databind方法主要用来执行数据绑定操作,该方法在数据绑定控件(如gridview控件)中很常用,这里不做介绍,具体请参见gridview控件的databind方法的使用及示例。另外focus方法常用于为textbox控件设置焦点,其具体用法请参见textbox控件focus方法使用。
三、事件
label控件的常用事件及说明如表3所示。
表3 label控件常用事件及说明
事件 | 说明 |
---|---|
databinding | 当服务器控件绑定到数据源时引发的事件 |
load | 当服务器控件加载到page对象时引发的事件 |
如果在label控件的某个事件下实现功能,可以在属性对话框中单击 image004 图标按钮,找到相应事件,然后双击进入其后台页中编写代码。例如:如果用户想在页面执行时直接将label控件加载到page对象中,可直接在label 控件的load事件下编写如下代码:
protected void label1_load(object sender, eventargs e)
{
label1.text = "label控件事件代码编写";
}
四、示例
label控件示例
下面示例主要通过设置label控件的相关属性来控制其显示外观。新建一个网站,默认主页为default.aspx,在default.aspx页面上添加一个label控件,其属性设置如表4所示。
表4 label控件属性设置
属性名称 | 属性值 |
---|---|
id | labtest |
text | label示例 |
backcolor | green(绿色) |
bordercolor | blue(蓝色) |
borderwidth | 2px(2像素) |
font-name | 宋体 |
font-size | 24pt(24磅) |
forecolor | white(白色) |
执行程序,示例运行结果如图2所示。
图2 label控件示例
程序完整代码如下:
default.aspx.cs 代码文件
using system;
using system.data;
using system.configuration;
using system.web;
using system.web.security;
using system.web.ui;
using system.web.ui.webcontrols;
using system.web.ui.webcontrols.webparts;
using system.web.ui.htmlcontrols;
public partial class _default : system.web.ui.page
{
protected void page_load(object sender, eventargs e)
{
}
protected void labtest_load(object sender, eventargs e)
{
labtest.focus();
}
}
default.aspx 设计文件
<%@ page language="c#" autoeventwireup="true" codefile="default.aspx.cs" inherits="_default" %>
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>label控件示例</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:label id="labtest" runat="server" backcolor="green" bordercolor="blue" font-bold="true"
font-names="宋体" font-size="24pt" forecolor="white" height="20px" onload="labtest_load"
text="label示例" width="167px" borderwidth="2px"></asp:label></div>
</form>
</body>
</html>