پاسخ به:هزاران نکته در سی شارپ
جمعه 18 مرداد 1392 1:38 AM
در فایل program.cs مربوط به پروژه بعد از دستورات زیر
Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(fals e);
دستور زیر رو قرار بدید
Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadExce ption);
و در همون فایل program.cs متدی با همان نامی که در سازنده بالا دادید باید ایجاد کنید مثل متد زیر
static void Application_ThreadException(object sender, ThreadExceptionEventArgs e) { MessageBox.Show("خطا در اجرای دستور کاربر", "خطا"); }
از این به بعد در صورتی که خطایی در قطعه کدی از برنامه رخ بده که درون بلوک try قرار نداشته باشه به این متد فرستاده می شه و دیگه پیام پیش فرض دات نت فریم ورک نمایش داده نمی شه.
نکته : آرگومان e در متد فوق حاوی Exception ایجاد شده می باشد که از آن می توان استفاده های مختلفی کرد.