PDA

نسخه کامل مشاهده نسخه کامل : مشکل در Binding a Date to a textbox



kasra_khan2003
25-07-2012, 22:39
سلام،

من تمام اطلاعات Database رو میتونم Bind کنم، اما سر Date مشکل دارم و این Error رو میده: object reference not set to an instance of an object

اینم قسمتی از کد هست:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید



اگر خط آخر رو حذف کنم هیچ مشکلی نیست، اما سر این Date ایراد میگیره. هرچی جستجو کردم به نتیجه ای نرسیدم.

ممنون میشم کسی کمک کنه

_H2_
25-07-2012, 23:42
سلام
اگر خطایی که گفتید را دریافت کرده اید حتماً خود شی txt_Date نمونه سازی نشده و null است، یعنی new نشده.
یعنی حدس میزنم کد زیر خطا ندهد!

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ونیز احتمالاً کدزیر متوقف خواهد شد.

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ضمناً اگر نوع txt_Date احیاناً DateTimePicker باشد، باید بجای Text از Value استفاده کنید.
موفق باشید.

kasra_khan2003
26-07-2012, 00:29
سلام
اگر خطایی که گفتید را دریافت کرده اید حتماً خود شی txt_Date نمونه سازی نشده و null است، یعنی new نشده.
یعنی حدس میزنم کد زیر خطا ندهد!

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ونیز احتمالاً کدزیر متوقف خواهد شد.

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ضمناً اگر نوع txt_Date احیاناً DateTimePicker باشد، باید بجای Text از Value استفاده کنید.
موفق باشید.

تو Part اول پستتون، فکر کنم کد رو اشتباه نوشتین. چون تغییر خاصی نکرده جز اینکه txt_Date رو Bind نکردین، txt_NB6 رو Bind کردین.

Part دوم هم خوب عملاً برنامه Stop میشه چون هنگام Load فرم، مقدار txt_Date هیچی (Nothing) هست.

مساله اینه که من نمیدونم چرا تمام موارد به راحتی Bind میشه اما این نمیشه. احتمالاً چون اونا از نوع Char یا Integer هستن اما این یکی Date.

txt_Date هم یه Textbox عادی هست.

نکته جالب اینجاست وقتی برنامه Error میده، اگه به فرم دقت کنین، میره Title خود فرم رو عوض میکنه و داده (که همون تاریخ باشه) رو جایگزین میکنه!

kasra_khan2003
26-07-2012, 10:32
الان متوجه یه موضوعی شدم!

اگر من بجای اینکه محتویات فیلد db_Date رو بدم به txt_Date، بدم به یه Textbox دیگه مثل txt_NB1 ، برنامه راحت اجرا میشه و تاریخ هم Bind میشه.

حالا اون txt_Date رو پاک کردم و 10 تا Textbox دیگه ساختم، اما هیچکدوم جواب نمیده!!! حتی اگه از همون txt_NB1 یه کپی بسازم هم جواب نمیده!

_H2_
26-07-2012, 11:54
سلام

تو Part اول پستتون، فکر کنم کد رو اشتباه نوشتین. چون تغییر خاصی نکرده جز اینکه txt_Date رو Bind نکردین، txt_NB6 رو Bind کردین
دقیقاً هدفمند بوده. میخواستم بجای txt_Date خراب از txt_NB6 استفاده کنید.

خوب عملاً برنامه Stop میشه چون هنگام Load فرم، مقدار txt_Date هیچی (Nothing) هست
خوب مشکل همین است، نباید چنین باشد!
تغییرات جدیدتان را نمیدانم ولی طبق شاهد فوق به روشنی دلیل مشکل مشخص است و txt_Date شما مشکل دارد و new نشده.

اگر خواستید فرمتان را برایم آپلود کنید، درست کردنش خیلی کاری ندارد.
موفق باشید.

kasra_khan2003
26-07-2012, 13:06
خدمت شما:

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

فرم رو اجرا کردید، F2 و سپس F1 رو بزنید، بعد عدد 1001 و Enter. تو این فرم (flc_Edit2) وقتی دکمه "ویرایش" رو بزنید، باید محتویات Bind بشه.

kasra_khan2003
26-07-2012, 14:37
مشکل حل شد.