PDA

View Full Version : راه حل برای clear کردن فرم؟؟؟



msh487
جمعه 17 خرداد 1387, 22:04 عصر
سلام
در فرمی که تعداد زیادی edit box وجود داره چه اه حلی برای پاک کردن فرم یا به اصطلاح clear کردن فرم مثلا بعد از عمل ثبت پیشنهاد می دهید ؟؟؟؟؟؟؟
کار عاقلانه ای هست که فرم رو بست و یه شیی جدید ساخت و اون رو نمایش داد ؟؟؟ فکر نکنم .
شما چه پیشنهادی می دهید ؟؟؟

Sociant7
جمعه 17 خرداد 1387, 22:42 عصر
فکر کنم با یه حلقه بشه ، نه؟ مثلا کنترلهای موجود در فرم رو چک کنی و اونایی که از نوع تکست باکس هستن رو خالی کنه! فکر کنم بشه!

Sociant7
جمعه 17 خرداد 1387, 23:32 عصر
من با این کد امتحان کردم شد :



foreach( Control formControl in this.Controls )
{
if (formControl.GetType() == typeof(TextBox))
formControl.Text = "";
}

msh487
شنبه 18 خرداد 1387, 19:11 عصر
سلام
آقا این کدی که دادید جواب نمی ده . هیچ خطایی نمی گیره . اجرا میشه ولی کاری رو که باید انجام بده اناجم نمی ده .
ممنون میشم اگه چکش کنید یا توضیح بدید

Mahdi.Kiani
شنبه 18 خرداد 1387, 20:38 عصر
سلام
آقا این کدی که دادید جواب نمی ده . هیچ خطایی نمی گیره . اجرا میشه ولی کاری رو که باید انجام بده اناجم نمی ده .
ممنون میشم اگه چکش کنید یا توضیح بدید

دلیلش اینه که کد فوق، فقط سطح اول از کنترل ها را چک می کنه

ازکد زیر استفاده کنید


private void ResetTextBox(Control parent)
{


foreach (Control ctrl in parent.Controls)
{
if (ctrl.GetType()==typeof(TextBox))
{
((TextBox)ctrl).ResetText();
}
ResetTextBox(ctrl);
}
}





نحوه فراخوانی




ResetTextBox(this);



کد فوق، تمامی تکست باکس هایی راکه در ون فرم قرار دارند را پاک می کنه.

به سادگی با تغییر نحواه فراخوانی، می توانید فقط تکست باکس هایی که بر روی مثلا panel1 قرار دارند را reset کنید
مانند زیر


ResetTextBox(this.panel1);


موفق باشید