PDA

View Full Version : سوال: چک کردن چند textbox با هم



Iran58
شنبه 17 خرداد 1393, 12:42 عصر
سلام
4تا textbox داریم که در هر کدام شماره پرسنلی کاربران را وارد می کنیم
حال می خواهم هر textbox را با textbox بعدی چک کنم و ببینم اگر شماره پرسنلی هر textbox باtextbox دیگری برابر بود ÷یام نشان بدهد
تا اینجا کار مشکلی ندارم
اما مشکل اساسی من این است که حتما نباید 4تا textbox پر شود مثلا textboxهای 3و4 می توانند خالی باشند
مشکل من اینجاست که می گویید textbox3وtextbox4باهم برابر هستند
برای رفع این مشکل گار کنم
کد من صورت زیر است if (txtPerssonalId.Text == txtNumberPetty2.Text)
{
FarsiMessegeBox.Show(
"شماره پرسنلی کاربران تکراری می باشد");
txtNumberPetty2.Focus();
return;
}
if (txtPerssonalId.Text == txtNumberPetty3.Text)
{
FarsiMessegeBox.Show(
"شماره پرسنلی کاربران تکراری می باشد");
txtNumberPetty3.Focus();
return;
}
if (txtPerssonalId.Text == txtNumberPetty4.Text)
{
FarsiMessegeBox.Show(
"شماره پرسنلی کاربران تکراری می باشد");
txtNumberPetty4.Focus();
return;
}
if (txtPerssonalId.Text == txtNumberPetty5.Text)
{
FarsiMessegeBox.Show(
"شماره پرسنلی کاربران تکراری می باشد");
txtNumberPetty5.Focus();
return;
}

CsharpNevisi
شنبه 17 خرداد 1393, 13:47 عصر
if (txtPerssonalId.Text == txtNumberPetty5.Text && txtNumberPetty5.Text != "" ) :لبخند:

nazanin366
یک شنبه 18 خرداد 1393, 14:50 عصر
foreach(TextBox t in this.controls)
{
if(t.Text=="")
//show message
}

اگه بخواین فقط یه سری از تکست باکس رو چک کنید اول به همه ی تکست باکس ها یه tag اضافه کنید.فرضا برای تکست باکس های ستاره دار tag رو برایر star قرار میدیم.فقط کافیه شرط t.tag=="star" رو هم اضافه کنید

Iran58
دوشنبه 19 خرداد 1393, 11:23 صبح
foreach(TextBox t in this.controls)
{
if(t.Text=="")
//show message
}

اگه بخواین فقط یه سری از تکست باکس رو چک کنید اول به همه ی تکست باکس ها یه tag اضافه کنید.فرضا برای تکست باکس های ستاره دار tag رو برایر star قرار میدیم.فقط کافیه شرط t.tag=="star" رو هم اضافه کنید

سلام
controls را از کجا فراخوانی کردید؟

CsharpNevisi
دوشنبه 19 خرداد 1393, 11:40 صبح
سلام
controls را از کجا فراخوانی کردید؟

یه حلقه فور ایچه که تکست باکسایی که رو فرم هستن رو دونه دونه پیمایش میکنه ... !!!!

aghayex
دوشنبه 19 خرداد 1393, 16:43 عصر
foreach برا زمانی هست که شما تعداد اشیا رو نمی دونی و می خوای بر روی تمام اشیا یه کار یکسان انجام بدی برای این دوستمون توصیه می کنم ابتدا اون دو تکس باکس رو از نظر خالی بدون چک کنه بعد اگه مقدا نال نداشتن دو مقدار شون رو با هم مقایسه کنه .
حالا اگه تعداد تکس باکس ها زیاد هست و یا این مقایسه در چند جای برنامت استفاده میشه بهتره که عمل مقایسه در یک تابع انجام بشه

Hadoop
سه شنبه 20 خرداد 1393, 05:38 صبح
شرح فارسی سوالت چیز زیادی دستگیرم نکرد.

ولی از کدی که گذاشتی فکر کنم سوالت اینه که احتمالا یه فرمی داری با چهار پنج تا تکست باکس .. کاربر میتونه اگه دلش خواست یک شماره کاربری توشون وارد بکنه یا نکنه . اما اگه وارد کرد نباید اون شماره تکراری باشه .

به نظر هم میرسه برات مهم نیست نشون بدی دقیقا کدون تکست باکس مشکل داره و مثلا متنش رو پاک کنی . فقط میخوای یه پیغامی نشون داده بشه.

خب مقادیر این چهار پنج تا بخون توی یک List.Contains چک کن ببین هست توش یا نیست . اگه بود یعنی تکراریه و پیفام رو نشون بده. نبود هم که هیچی به سلامت .