ورود

نسخه کامل مشاهده نسخه کامل : Property Grid



mohsen_3
13-06-2009, 11:56
ُسلام من یه سوال درباره ی Property Grid داره
من یه Object دارم می خوام خواص اون رو باهاش تغییر بدم
من اول اینو می نویسم که خواصشو بریزه تو Property Grid مون
property.selectObject = Object;
خوب حالا گرید مون خواص ابجکت رو نشون می ده ولی تغییراتی که می دیم به Object اعمال نمی کنه باید چی کنم ؟
که هر تغییری در خواص گرید مون می دیم اون خواص اون ابجکت هم تغییر کنه

_H2_
14-06-2009, 21:48
سلام
نیاز به کار خاصی نیست، اگر شی شما یک class باشد، چون ارجاعی است، تغییرات در همان لحظه اعمال خواهد شد، بدیهی است که اگر شی struct باشد با هر انتقال یک کپی جدید از شی منتقل میشود.
شی تان class است یا struct ؟

mohsen_3
14-06-2009, 22:23
کلاس هست
ولی نمی شه

_H2_
14-06-2009, 22:38
سلام
بدون شک جایی را اشتباه کرده اید... لطفاً دقت بیشتری کنید.
کلاس تان چیست؟
میتوانید کد نمونه اپلود کنید؟

اگر بخواهید به راحتی میتوانم یک سمپل برایتان آپلود کنم...

mohsen_3
15-06-2009, 11:05
نه نیاز به نمونه نیست من واسه کلاس های دیگه استفاده می کنم جواب می ده
کلاسم سادست چیز خاصی نداره


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کلاس فرم من معمولی نیست این چند تا چیز که می زارم ببینید مشکل از اینا نیست
اسم فرم من Program است هم کلاس Program توشه هم فرم .


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

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


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


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

خیلی ممنون

در ضمن مشکلش با کلاسم نیست با بقیه ی چیز ها هم مشکل داره
با این کنترل ها فقط کار می کنه

_H2_
15-06-2009, 12:00
سلام
حتماً دوبار new میکنید...
به این نمونه دقت کنید:

خواهید دید که به وضوح با تغییر Rotation مقدار ان در برنامه تغییر میکند و با کلیک دکمه موجود، مقدار جاری که ناشی از تغییر اعمال شده در PropertyGrid است نشان داده خواهد شد:

این کد به وضوح صحت عملکرد PropertyGrid را نشان میدهد...
فراموش نکنید که اگر دو بار New کنید، دو شی ساخته اید و مثل ان میماند که دو TextBox داشته باشید! هر TextBox میتواند رنگ و فونت و عرض و... خودش را داشته باشد.

(9 کیلوبایت)
rapidshare.com/files/244720376/WindowsFormsApplication1.zip

=====

در نهایت در مورد کد اصلی تان هم باید بگویم شما نیازی به ایجاد حلقه while در متد main ندارید...
بهتر است یک وراثت از Microsoft.Xna.Framework.Game بگیرید و در main متد Run این کلاس را اجرا کنید.
کلاس فوق خودش پیاده سازی هایی برای Update و Draw و... دارد.

=====

موفق باشید.

mohsen_3
15-06-2009, 12:51
خیلی ممنون
من دوبار New نکردم
فقط یه باره دومی کو ؟
----------------
خوشمان امد
شما هم ؟
اگه این کاری که شما می گید رو انجام بدم دیگه نمی تونم از کنترل ها و .... استفاده کنم
یه کاری کردم که هم بشه از Xna استفاده کرد هم از کنترل ها و ....
امتحان کردم نشد
یه جوری درستش کردم ولی اصولی نیست
زیاد درست سر داره

_H2_
15-06-2009, 13:13
سلام

فقط یه باره دومی کو ؟
شما باید در کدتان پیدایش کنید...
همانطور که در کد نمونه خواهید دید با یکبار new و حفظ اشاره گر به صورت عمومی (که نیاز به new مجدد نباشد) PropertyGrid کار خود را انجام خواهد داد و کاری به نمونه شی ندارد.


امتحان کردم نشد بله ولی اصولاً مخلوط کار کردن این تیپی شاید چندان مرسوم نباشد.