PDA

View Full Version : سوال: کنترل کردن تکست باکس (Validation)



arash ghafori
چهارشنبه 11 اردیبهشت 1392, 16:24 عصر
با سلام.
دوستان من یه تکست باکس دارم که داخلش مثلا "اسم" وارد میشه.
خوب مسلما اسم نباید "اسپیس" داشته باشه و نباید توش از "اعداد" استفاده بشه !

چطور کنترلش کنم که فقط توش رشته وارد بشه نه عدد ؟

ممنون میشم کمکم کنید.

کامبیز اسدزاده
چهارشنبه 11 اردیبهشت 1392, 16:56 عصر
شما این مورد رو بررسی کنید میتونید به صورت کاراکترهای حروفی هم تغییرش بدین از String استفاده کنید. مثال زده شده کامل هست :

http://www.codeproject.com/Articles/220519/Numbers-or-Characters-only-Textbox-Validation-in-C

arash ghafori
چهارشنبه 11 اردیبهشت 1392, 17:32 عصر
متشکرم. نمونه ی بسیار خوبی بود.
اما متاسفانه چندتا مشکل دارم که ممنون میشم راهنماییم کنید.

این کد توی تکست باکس Integerش بود که این قسمتشو نفهمیدم :


catch (Exception)
{
try
{
int CursorIndex = T.SelectionStart - 1;
T.Text = T.Text.Remove(CursorIndex, 1);

//Align Cursor to same index
T.SelectionStart = CursorIndex;
T.SelectionLength = 0;
}
catch (Exception) { }

}

با تشکر فراوان.

کامبیز اسدزاده
چهارشنبه 11 اردیبهشت 1392, 17:43 عصر
متشکرم. نمونه ی بسیار خوبی بود.
اما متاسفانه چندتا مشکل دارم که ممنون میشم راهنماییم کنید.

این کد توی تکست باکس Integerش بود که این قسمتشو نفهمیدم :


catch (Exception)
{
try
{
int CursorIndex = T.SelectionStart - 1;
T.Text = T.Text.Remove(CursorIndex, 1);

//Align Cursor to same index
T.SelectionStart = CursorIndex;
T.SelectionLength = 0;
}
catch (Exception) { }

}

با تشکر فراوان.


خب قسمت Catch که مشخص هست ...

در رابطه با کد های داخل try که در صورت عدم وجود مشکل اجراء خواند شد اینگونه میشه توضیح داد یعنی من اینطور برداشت میکنم ...


در ابتدا با تعریف کردن یک مقدار از نوع عدد که شامل شمارنده محل قرارگیری Cursor ماوس هست در داخل تکست باکس ... دیدین وقتی رو یه TextBox ای کلیک میکنید علامت کورسر چشمک میزنه ؟ در این خط این رو بهش تعریف کرده که ابتدا با تعریف مقدار 1- مقدار ثابت رو از قبل در ایندکس ارسال میکنه یعنی (حالت بدون انتخاب) حال بعد از اون گفته که آقا وقتی رو کادر کلیک شد مقدار کورسر از ۱- حذف و به ۱ که به صورت چشمک زن میباشد تغییر کند ! البته در هر قسمت از خط که کاراکتری حذف میگردد این عمل انجام میگیرد.

در خط های بعدی هروقت انتخابی در داخل کادر صورت میگیره Length اون رو برابر ۰ در نظر میگیره یعنی باز مکان نما یا همون کورسر رو در ابتدای محل انتخابی قرار میدهد.


در کل این کد به عنوان پاک سازی و مرتب سازی کادر هنگام انتخاب متن یا کاراکتری در نظر گرفته شده است.


حالا من اینطور برداشت کردم شاید غلطه !! چون تستش نکردن تا بهتر درکش کنم.