1.TextBox控制項
1.1. 概述
TextBox控制項是文本框控制項。用於在網頁表單中,讓用戶輸入文本內容,收集用戶信息,然後再將收集到的信息發送到伺服器端。
TextBox控制項對應於Html中的<input type=」text」>標記。
在Visual Studio中,可以直接將文本框控制項拖放到需要的位置上,如果網頁採用表格布局,則直接拖放到相應的單元格上即可,使用方法與Label控制項是一樣的。
1.2. 屬性
1.2.1. ID屬性
ID屬性是每個asp.net每個伺服器控制項必須具備的屬性,用來指定控制項的唯一ID值。
TextBox控制項的ID值最好以「txt+有意義的單詞」組成,便於後臺C#代碼中識別並賦值和獲取值。
1.2.2. Text屬性
TextBox控制項的Text屬性用於給文本框賦值或取值,以及獲取用戶輸入的值。
運行一下結果:
現在獲取在文本框中輸入的值,使用按鈕來查看結果:
在此文本框中輸入的新值,現在使用後臺C#代碼獲取一下其值:
點擊一下「Button」按鈕:
已經將文本框的值獲取並輸出了。
按鈕事件C#代碼如下:
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace Yidosoft.Edu{public partial class TextBoxControl : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){//txtName.Text = "賦值";}protected void Button1_Click(object sender, EventArgs e){string strName = txtName.Text;Response.Write(strName);}}}
1.2.3. TextMode屬性
TextBox控制項的TextMode屬性可以指定文本框是密碼框、單行文本框和多行文本框:
1) SingleLine:默認值,表示單行文本框。
單元文本框就是只能輸入一行文本內容的文本框,且還可以控制輸入文本的長度。
2) MultiLine:表示多行文本框。
<asp:TextBox ID="txtName" runat="server" TextMode="MultiLine"></asp:TextBox>
多行文本框常用於一次需要輸入多行文本內容的文本框,只能輸入純文本內容,不能插入文件、圖片等。
一般情況下,在軟體系統中,都會使用第三方的富文本框來替代多行文本框,用於可以插入更多的媒體類型,如文本、圖片、文件、音頻、視頻都可以插入到富文本框中。
3) Password:表示密碼框。
<asp:TextBox ID="txtName" runat="server" TextMode="Password"></asp:TextBox>
密碼常用於用戶登錄和用戶註冊頁面,用戶輸入的內容是看不到的,使用特殊符號替代。不同的瀏覽器,則使用的特殊符號不同。
1.2.4. MaxLength屬性
MaxLength屬性用於指定文本框中最大可以輸入的字符數。
<asp:TextBox ID="txtName" runat="server" TextMode="Password" MaxLength="20"></asp:TextBox>
表示密碼值最大為20個字符。
雖然在用戶輸入時,只能輸入20個字符串,但是這只是在瀏覽器層面控制字符串,對於伺服器端,最好還是要使用C#代碼來限制輸入字符的個數。
1.2.5. Length屬性
使用TextBox控制項的Length屬性獲取文本框中共輸入了多少個字符。Length屬性統計字符串的長度。
對於Length屬性,它只是獲取文本框中輸入了多少個字符,至於輸入什麼樣的字符,最大字符是多少,Length屬性是不負責的。
注意:Length屬性是只讀屬性。
在*.aspx.cs文件中,可以使用C#語言來對TextBox控制項進行操作,主要是賦值和取值。TextBox本身就是一個類,是微軟已經開發好的,我們使用C#語言調用其中的屬性和方法即可。