ASP.NET2005
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

کنترل TextBox

اذهب الى الأسفل

کنترل TextBox Empty کنترل TextBox

پست  taherehfelegari الإثنين نوفمبر 23, 2009 10:45 am

این کنترل به هر یک از این سه تگ HTML استاندارد می تواند تبدیل شود:
1. فیلد ورود متن
2. فیلد ورود رمز عبور
3. یک ناحیه متنی
کد زیر طریقه استفاده از کنترل TextBox را برای نمایش تکست باکس تک خطی تکست باکس رمز عبوری وتکست باکس چند خطی نشان می دهد.

*نکته:
کنترل های وب سرور بر خلاف تگ های HTML به جای استفاده از خصوصیت Name از ID استفاده میکند و همچنین تمام کنترل های وب سرور دارای خصوصیت Runat="server" می باشند که این خصوصیت باعث اجرا شدن کنترل ها در طرف سرور می شود.

کد:
TextChanged.aspx
<html>
<head><title>TextBox</title></head>
<body>
<form Runat="server">
<p>
Username:
<asp:TextBox
ID="txtUsername"
Columns="30"
Runat="server" />
</p><p>
Password:
<asp:TextBox
ID="txtPassword"
TextMode="Password"
Columns="30"
Runat="server" />
</p>
Comments:
<br>
<asp:TextBox
ID="txtComments"
TextMode="MultiLine"
Rows="10"
Columns="30"
Runat="server" />
<p>
<asp:Button
Text="Click Here!"
Runat="server" />
</form>
</body></html>


اگر چه برای تعریف فیلد های Comments, Password, UserName از وب کنترل های یکسانی استفاده شده است، ولی آنچه کاربر می بیندسه المان متفاوت است. علت تفاوت این المان ها به خصوصیت TextMode این کنترل بر می گردد.

TextMode :
این خصوصیت نوع تکست بالکس را مشخص می کند. مقادیر مجاز برای این خصوصیت عبارتند از :
• MultiLine (چند خطی)
• Password (رمز عبوری)
• SingleLine (تک خطی)

خصوصیت AutoPostBack :
کنترل تکست باکس خصوصیت دیگری دارد به نام AutoPostBack ، وقتی مقدار این خصوصیت True باشد، فرم در بر گیرنده تکست باکس به طور خودکار هر وقت مهتوای تکست باکس تغییر کند به سرور پست می شود.

رویداد TextChanged :

کنترل TextBox واقعه ای دارد به نام TextChanged که زمانی رخ می دهد که محتویات تکست باکس تغییر یافته و فرم در بر گیرنده تکست باکس به سرور پست بک شده باشد.

قطعه کد زیر طریقه استفاده از خصوصیت AutoPostBack ورویداد TextChanged را در قالب یک بازی ساده نشان می دهد. این صفحه حاوی سه کادر است و کسی در این بازی برنده است که بتواند کلمه Apple را داخل هر سه کادر وارد کند.
کد:

TextChanged.aspx
<script Runat="server">
Sub ChangeBox1( s As Object, e As EventArgs )
txtBox.Text = StrReverse( txtBox.Text )
CheckWin( )
End Sub
Sub ChangeBox3( s As Object, e As EventArgs )
txtBox3.Text = StrReverse( txtBox3.Text )
CheckWin( )
End Sub
Sub CheckWin( )
If txtBox.Text = "Apple"_
And txtBox2.Text = "Apple"_
And txtBox3.Text = "Apple" Then
lblMessage.Text = "You Win!"
End If
End Sub
</script>
<html>
<head><title>TextBoxAutoPostBack</title></head>
<body>
<form Runat="server">
Enter the word Apple into all TextBoxes:
<p>
<asp:TextBox
ID="txtBox"
AutoPostBack="True"
onTextChanged="ChangeBox3"
Runat="server" />
</p><p>
<asp:TextBox
ID="txtBox2"
AutoPostBack="True"
onTextChanged="ChangeBox1"
Runat="server" />
</p><p>
<asp:TextBox
ID="txtBox3"
AutoPostBack="True"
onTextChanged="ChangeBox3"
Runat="server" />
</p>
<asp:Label
Id="lblMessage"
Runat="server" />
</form>
</body></html>


مثلاً، اگر متن موجود در تکست باکس دوم را عوض کنیم، ساب روتین changeBox1 اجرا می شود که با استفاده از تابع StrReverse متنی که در تکست باکس اول وجود دارد را معکوس می کند.
که در صورت وارد کردن کلمه Apple در هر سه تکست باکس پیام You Win! از طریق بر چسب lblMessage ظاهر می شود.
taherehfelegari
taherehfelegari
کاربر متوسط
کاربر متوسط

تعداد پستها : 27
تاريخ التسجيل : 2009-10-26

بازگشت به بالاي صفحه اذهب الى الأسفل

بازگشت به بالاي صفحه

- مواضيع مماثلة

 
صلاحيات هذا المنتدى:
شما نمي توانيد در اين بخش به موضوعها پاسخ دهيد