PDA

View Full Version : مبتدی: ایجاد متدی که شرطی را بررسی کند و پیغامی را در قالب مسیج باکس نمایش دهد



mina abdi
شنبه 09 تیر 1397, 22:52 عصر
سلام به همه دوستان
نگاه کنید من یه فرم دارم که داخلش کلی تکست باکس و کامبو باکس و .. هست ، برای چک کردن اینا که خالی نباشن یا .. میخواستم یه متد درست کنم که توش شرط ها را بررسی کنه و توی return یه پیغام نماش بده.
ممنونم اگه کسی بلده کمکم کنه

mina abdi
شنبه 09 تیر 1397, 23:05 عصر
میشه لطفا اگه کسی میدونه راهنماییم کنه اخه عجله دارم :ناراحت:

mr.sirwan
شنبه 09 تیر 1397, 23:58 عصر
خب شما کجا مشکلی داری؟ برای چک کردن تکست باکس از string.IsNullOrEmpty(textBox1.Text) استفاده کن، برای کمبوباکس هم از (comboBox.SelectedIndex > -1) استفاده کن اگر توی کمبو باکس آیتمی انتخاب شده باشه SelectedIndex عددی بزرگتر مساوی صفرخواهد بود، در غیر اینصورت مقدارش -1 (منفی یک) خواهد بود

حالا شما ترکیبی از اینارو توی متد بنویس و جایی که لازم داری فراخوانی کن

mina abdi
یک شنبه 10 تیر 1397, 00:48 صبح
اخه چون زیادن من میخواستم متد بنویسم

mina abdi
یک شنبه 10 تیر 1397, 00:54 صبح
بعد یه چیز دیگه ام که هست ، من اولش همینطوری ای که شما گفتی چک کردم ، مثلا گفتم اگه کاربر فیلد نام و خالی گذاشت فرم و ببند ، حالا چرا فرم و ببنده !!!! چون من میخواستم وقتی کاربر فبلد نام و خالی گذاشت بهش پیغام بده که فبلد نام و خالی گذاشتی و بعدش روی تکست باکس فیلد نام فوکوس کنه ، که توی این حالت ( یعنی بدون متد) این فوکوسه کار نمیکنه .
شایدم من بلد نیستم
حالا اگه شما میدونی که چطوری این مشکل حل میشه بهم بگین لطفا . ممنونم

mina abdi
یک شنبه 10 تیر 1397, 01:01 صبح
خب شما میتونی بگی چطوری متد شو بنویسم ؟ نوع بازگشتی رو توی تعریف متد چی بگم ؟ آرگومانشاش چی باشه ؟ return چی رو برگردونه ؟

ببخشید من تازه شروع کردم ، مبتدی ام

mr.sirwan
یک شنبه 10 تیر 1397, 01:25 صبح
نمونه کد:
public bool Validator()
{
if(string.IsNullOrEmpty(textBox1.Text))
{
MessageBox.Show("مقدار را وارد کنید");
textBox1.Focus();
return false;
}
else if.....

// اگر هیچ کنترل خالی وجود نداشت مقدار ترو برگردون به این معنی که همه چی اوکیه
return true;
}


متد رو فراخوانی کن، اگه مقدار بازگشتیش false بود هیچ کاری انجام نده، اگه true بود میتونی اطلاعات رو ثبت کنی و یا هر کار دیگه ای که میخوای

ali_md110
یک شنبه 10 تیر 1397, 20:56 عصر
اگر تعداد تکست باکسهاتون در فرم زیاد هست میتونید از یک حلقه کمک بگیرید
البته خاصیت AccessibleDescription کنترلهاتون به فارسی تنظیم کنید مثال AccessibleDescription برای textBox1 :فیلد نام و نام خانوادگی


for (var i = Controls.Count - 1; i >= 0; i--)
{
Control c = Controls[i];
if (c is TextBox)
{
if (String.IsNullOrEmpty(c.Text))
{

c.Focus();
MessageBox.Show(c.AccessibleDescription +"خالی نباشد");

break;
}
}
}

mina abdi
یک شنبه 10 تیر 1397, 21:37 عصر
اهان خیلی ممنون بابت راهنمایی.

mina abdi
یک شنبه 10 تیر 1397, 21:38 عصر
خیلی ممنونم که وقت گذاشتین وکمکم کردین.