PDA

View Full Version : ابتدا combobox_selectindexchange() اجرا میشه نه form_load() !!!!!!



jeniferxp
چهارشنبه 28 مرداد 1388, 07:58 صبح
با سلام
دوستان من در فرمم یک combobox دارم و یا textbox در form_load به صورت دستی از دیتابیس کمبو باکسمو پر می کنم و از طرفی در رویداد selectindexchange مربوط به combobox نوشتم که متن کمبو باکس را در textbox بریزه اما در موقع trace ابتدا به رویداد selectindexchange مربوط به کمبوم می رود و چون هنوز پر نشده پیغام خطا میده
چون اصلا form_load اجرا نشده
میشه لطفا منو راهنمایی کنید
با تشکر

hozouri
چهارشنبه 28 مرداد 1388, 08:45 صبح
دوست عزیز در لیست Event های فرم ببینید رویداد Load پر شده یا نه ؟؟؟

paridarkavir
چهارشنبه 28 مرداد 1388, 08:56 صبح
سلام
یه متغیر bool تعریف کن با مقدار اولیه t (در قسمت اصلی فرمت نه در تابع های اون)بعد در selectindexchange یه شرط بذار اگر متغیره f بود return کند وگرنه کدهای داخل بقیه کدهای selectindexchange را اجرا کند

از طرفی در خط اول تابع loadفرمتون مقدار متغیر را f کنید
همین کار را در تابعی که با آن کمبو را پر میکنید انجام بدهیدو مقدار متغیر را tبگذارید
موفق باشید

jeniferxp
چهارشنبه 28 مرداد 1388, 13:35 عصر
دوستان من برناممو واستون گذاشتم میشه مشکلشو حل کنید!!؟
با تشکر

amir_pro
چهارشنبه 28 مرداد 1388, 14:51 عصر
راه حلی که خودم ازش استفاده میکنم اینه که اول رویداد فرم لود از اجرای رویداد selectedindexchange مربوط به کومبو باکس جلوگیری کنی، بعد کدهای مورد نظرتو بنویسی و در آخر هم رویداد را به کومبو باکس بایند کنی.

این کد را در اولین خط فرم لود بنویس

CmbUser.SelectedIndexChanged -= new System.EventHandler(this.CmbUser_SelectedIndexChan ged);


این هم در آخرین خط بنویس

CmbUser.SelectedIndexChanged += new System.EventHandler(this.CmbUser_SelectedIndexChan ged);

امیدوارم که مشکلتو حل کنه