PDA

View Full Version : سوال: یه مشکل عجیب:نتیجه ی runکردن به طور معمولی و step step متفاوت است



adamak88
جمعه 11 مرداد 1387, 22:05 عصر
سلام

//
MessageBox.Show(CmbPersonTitle.Text.Trim(), "1");
//
MessageBox.Show(CmbPersonTitle.Text.Trim(), "2");
//


در تابع سازنده یک فرم نیاز به خاصیت text یک combobox دارم اگر به طور معمول start debugging کنم مقدار"System.Data.DataRowView " را به آن میدهد که ایجاد exeption میکند
برای تست 2 messagebox بالا را نوشتم و دو breakpoint قرار دادم اگر از پنجره locals خاصیت text combox را چک کنم مقدار صحیح در آن قرار دارد و messagebox مقدار صحیح را نشان میدهد ولی اگر چک نکنم System.Data.DataRowView چاپ میشود حتی اگر messagebox اول رو چک نکنم System.Data.DataRowView را چاپ میکند و قبل از اجرای دومی از locals,خاصیت Text مربوط را چک کنم مقدار صحیح در آن قرار دارد و messagebox مقدار صحیح را نشان میدهد

خیلی عجیبه برام :متعجب: نمیدونم چرا فرق میکنه
از راهنماییتون ممنون میشم

adamak88
شنبه 12 مرداد 1387, 23:40 عصر
:ناراحت:کسی نمیدونه چرااااااااااا؟

__H2__
شنبه 12 مرداد 1387, 23:56 عصر
سلام
اطلاعات شما زیاد کامل نیست.
حداقل بخشی از سورس را بگذارید، یا اگر میتوانید یک نمونه آپلود کنید تا بتوان بررسی کرد.


ولی اگر در کامبو متن System.Data.DataRowView را می بینید، احتمالاً به خاطر این است که یک DataTable را به عنوان Source داده اید، ولی ستونی را که باید کامبو از آن پر شود در خصیصه DataManager مشخص نشده.

hdv212
یک شنبه 13 مرداد 1387, 00:00 صبح
نمیدونم چرا اینطوری میشه، به هر حال راه بهتر اینه که شما در رویداد Load مربوط به فرمت، مقادیرتو به خاصیت Items مربوط به ComboBox ات اضافه کنی :

this.comboBox1.Items.Add("myValue");
و اگه به آبجکتی بایند هست، باید مطمئن بشی که خاصیت های DataSource و DisplayMember و DisplayValue رو به درستی تنظیم کرده باشی.

top7news
یک شنبه 13 مرداد 1387, 02:04 صبح
سلام
شاید اینی که میگم نباشه ولی اگه جوابی که توی run میگیری با جوابی که توی step by step میگیری فرق داره پس شاید اینیه که میگم : توی Solution Explorer یه کلیک راست بکن و Clean رو انتخاب کن و بعد از این کار حالا مجددا یه run ار پزوژه ات بگیر ببین درست میشه یا نه .

adamak88
دوشنبه 14 مرداد 1387, 02:11 صبح
همه چیز درسته DataSource و Displaymember به درستی مقدار داده شده
اگر برنامه به طور معمولی run بشه خاصیت text برابر System.Data.DataRowView ولی اگر قبل از فراخوانی تابع text را چک کنم مقدار اون درسته و مشکلی پیش نمیاد
**:متعجب::متعجب:*اگر چک کنم مقدار اون درسته ولی به طور معمول نه**:متعجب::متعجب:*

__H2__
دوشنبه 14 مرداد 1387, 03:00 صبح
سلاماگر مشکلتان با توضیحات و حدسهای دوستان نشده، پیشنهاد میکنم اگر به رفع مشکلتان علاقه مند هستید، یک نمونه ای آپلود کنید یا حداقل بخشی از کدهای مربوطه را بگذارید. چون چشم بسته کمی مشکل است!موفق باشید.

adamak88
دوشنبه 14 مرداد 1387, 23:28 عصر
درست شد:لبخندساده:
کاری رو که در تابع سازنده انجام میدادم و به DataSource و Displaymember مقدار میدادم و از combobox استفاده میکردم را در تابع form-load انجام دادم که دیگه مشکلی پیش نمیاد و درست شد
از یکی از دوستام که پرسیدم این مشکل تو VB براش پیش اومده بود که با این روش درست میشه