TextBox Control

Reference: MSDN

               ASP.NET 2.0 웹프로젝트와 실전 프로그래밍

TextBox 컨트롤의 대부분의 기능은 TextBoxBase 클래스에서 상속됩니다.

TextBox 컨트롤을 사용하면 사용자가 응용 프로그램에 텍스트를 입력할 수 있습니다. 이 컨트롤에는 여러 줄 편집 및 암호 문자 마스킹을 비롯하여 표준 Windows TextBox 컨트롤에는 없던 추가 기능이 있습니다.

일반적으로 TextBox 컨트롤은 텍스트를 한 줄로 입력하고 표시하는 데 사용됩니다. MultilineScrollBars 속성을 사용하면 여러 줄의 텍스트를 표시하거나 입력할 수 있습니다. AcceptsTabAcceptsReturn 속성을 true로 설정하면 여러 줄을 입력할 수 있는 TextBox 컨트롤에서 더 많은 텍스트 조작이 가능합니다.

MaxLength 속성을 특정 문자 수로 설정하면 TextBox에 입력되는 텍스트의 길이를 제한할 수 있습니다. 또한 TextBox 컨트롤은 암호 및 기타 중요한 정보를 입력하는 데도 사용할 수 있습니다. PasswordChar 속성을 사용하면 한 줄만 입력할 수 있는 컨트롤의 문자를 마스킹할 수 있습니다. CharacterCasing 속성을 사용하면 사용자가 TextBox 컨트롤에 대문자, 소문자 또는 대문자와 소문자의 조합을 입력할 수 있도록 지정할 수 있습니다.

TextBox 컨트롤에 입력되는 텍스트를 제한하려면, 컨트롤에 입력하는 각 문자의 유효성을 검사할 수 있도록 KeyDown 이벤트에 대한 이벤트 처리기를 만듭니다. 또한 ReadOnly 속성을 true로 설정하여 TextBox 컨트롤에 있는 데이터의 모든 엔트리를 제한할 수도 있습니다.

ASP.NET 2.0에서 TextBox Control에 추가된 속성은 AutoCompleteType과 ValidationGroup입니다. AutoCompleteType은 웹 브라우저의 자동 완성 기능을 서버 컨트롤 수준에서 제어하기 위한 속성입니다. 자동 완성이란, 사용자가 전에 입력했던 문자열을 브라우저가 기억했다가 다기 입력할 필요가 있을때 드롭다운 형식으로 보여주는 기능입니다.

TextBox Control의 AutoCompleteType 속성은 AutoCompleteType 열거형을 값으로 사용하는데, 다양한 카테고리 값과 더불어 Disabled와 None을 정의 합니다. Disabled 는 TextBox 컨트롤이 자동 완성 기능을 사용하지 않도록 하고, None은 카테고리와 상관 없이 ID가 같은 컨트롤끼리 입력 데이터를 공유하도록 합니다. AutoCompleteType 속성의 기본값은 None 입니다. 아래 AutoCompleteType 에 대한 예제 입니다.

Result:

하나의 WebSite를 만들고 "TextBox"란 폴더를 만듭니다. 폴더 안에 TextBoxTest01 과 TextBoxTest02 라는 WebForm을 추가 합니다.

TextBoxTest01.aspx

===============

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TextBoxTest02.aspx.cs" Inherits="TextBox_TextBoxTest02" %>

<!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>Page 2</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        Last Name: <asp:TextBox ID="txtLastName" runat="server" AutoCompleteType="LastName"></asp:TextBox><br />
        First Name: <asp:TextBox ID="txtFirstName" runat="server" AutoCompleteType="FirstName"></asp:TextBox><br />
        Email: <asp:TextBox ID="txtEmail" runat="server" AutoCompleteType="Disabled"></asp:TextBox><br />
       
        <asp:Button ID="btnsubmit" runat="server" Text="Submit" />
        <a href="TextBoxTest01.aspx">Go to TextBoxTest01</a>
    </div>
    </form>
</body>
</html>

==========================================================================================

TextBoxTest02.aspx

===============

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TextBoxTest02.aspx.cs" Inherits="TextBox_TextBoxTest02" %>

<!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>Page 2</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        Last Name: <asp:TextBox ID="txtLastName" runat="server" AutoCompleteType="LastName"></asp:TextBox><br />
        First Name: <asp:TextBox ID="txtFirstName" runat="server" AutoCompleteType="FirstName"></asp:TextBox><br />
        Email: <asp:TextBox ID="txtEmail" runat="server" AutoCompleteType="Disabled"></asp:TextBox><br />
       
        <asp:Button ID="btnsubmit" runat="server" Text="Submit" />
        <a href="TextBoxTest01.aspx">Go to TextBoxTest01</a>
    </div>
    </form>
</body>
</html>

==========================================================================================

txtEmail 에서 두 페이지의 속성의 조금 차이가 있는데... 자체로 테스트 하면 인츰 아실수가 있습니다.

posted @ 2009-01-31 13:48  OOK  阅读(370)  评论(0编辑  收藏  举报