PDA

View Full Version : ساخت Form Designer در سی شارپ



gwbasic
چهارشنبه 08 اردیبهشت 1389, 18:18 عصر
این موضوع که می خوام مطرح کنم شاید نیاز خیلی ها نباشد ولی مطمئنا برای خیلی ها جالب خواهد بود.

تا حالا شده بخواهید که یه Designer درست کنید : مثلا یه فرم داشته باشید و کنترل های آن را Runtime طراحی کنید ، یه Button روی فرم بیاندازید و سایز آن را کوچک بزرگ کنید؟!؟!؟!؟

یه Windows Application ایجاد کنید و کد زیر را سازنده آن قرار دهید



DesignSurface ds = new DesignSurface();
ds.BeginLoad(typeof(Form));
Control c = ds.View as Control;
c.Parent = this;
c.Dock = DockStyle.Fill;



برنامه را اجرا کنید....

چه اتفاقی افتاد ؟

جالب نبود ؟

اگه دوست داشتید نظر بدید تا مطالب بیشتری در این زمینه بذارم

MSN_Issue
چهارشنبه 08 اردیبهشت 1389, 18:35 عصر
Error 1 The type or namespace name 'DesignSurface' could not be found (are you missing a using directive or an assembly reference?)



این ارور رو میده !!!

gwbasic
چهارشنبه 08 اردیبهشت 1389, 18:56 عصر
ابتدا System.Design.dll رو به Reference پروژه Add کنید
سپس using System.ComponentModel.Design رو به بالای کد فرم اضافه کنید

hojjatshariffam
چهارشنبه 08 اردیبهشت 1389, 19:15 عصر
جالب بود دوست عزیز
ممنون
اتفاقا من دنبال به همچین چیزی بودم و قصد دارم یه دیزاینر بنویسم تا برنمه هامو ساده تر بتونم دیزاین کنم
بخصوص که می خوام اجزاء فرم رو بزارم توی دیتا بیس تا در حین اجرا بتونم تغییراتی در اونا بدم

اگه میشه اطلاعات بیشتری بدین ، ممنون می شم

exlord
پنج شنبه 09 اردیبهشت 1389, 09:44 صبح
System.Design.dll تو .net 4 RC نیست .........:قهقهه::قهقهه::عصبانی::ع صبانی++:

gwbasic
شنبه 11 اردیبهشت 1389, 18:01 عصر
دوست عزیز بعید به نظر می رسه که System.Design.dll حذف شده باشه ؟!؟!؟!؟!؟!؟!؟!؟!
لطفا اگر مطمئن هستید لینک بذارید

تو MSDN که نگاه کردم برخی از Type ها اونم در حد یه member و اونم در حد Obsolete تغییر ایجاد شده!
چه برسد که کل Dll حذف بشه!؟!؟!

gwbasic
شنبه 11 اردیبهشت 1389, 18:05 عصر
برای توضیحات بیشتر در DesignSurface به لینک زیر مراجعه کنید که دارای یه Sample خوبم هست.

امیدوارم خوشتون بیاد

http://msdn.microsoft.com/en-us/magazine/cc163634.aspx

exlord
شنبه 11 اردیبهشت 1389, 19:59 عصر
دوست عزیز بعید به نظر می رسه که System.Design.dll حذف شده باشه ؟!؟!؟!؟!؟!؟!؟!؟!
لطفا اگر مطمئن هستید لینک بذارید

تو MSDN که نگاه کردم برخی از Type ها اونم در حد یه member و اونم در حد Obsolete تغییر ایجاد شده!
چه برسد که کل Dll حذف بشه!؟!؟!
lمن نگفتم حذف شده گفتم تو نسخه RC من نیست

sia_2007
شنبه 11 اردیبهشت 1389, 22:55 عصر
ببینید یک نسخه کم حجم تر از Net Framework. وجود داره به نام

Net Framework 4 Client Profile.

که شامل DLL های کمتر مورد استفاده نیست.

ASP.NET
Advanced Windows Communication Foundation (WCF) functionality
.NET Framework Data Provider for Oracle
MSBuild for compiling

DLL مورد نظر شما ذیل بند چهارم قرار گرفته.
باید پروژه رو ببرید رو Net Framework 4.
حجم Net Framework 4 Client Profile. حدودا 39 مگابایته و به نظر من استراتژی جالبیه

hojjatshariffam
شنبه 11 اردیبهشت 1389, 23:05 عصر
برای توضیحات بیشتر در DesignSurface به لینک زیر مراجعه کنید که دارای یه Sample خوبم هست.

امیدوارم خوشتون بیاد

http://msdn.microsoft.com/en-us/magazine/cc163634.aspx
ممنون از دوست عزیزمون
بچه ها لینک عالیه ، حتما ببینید

gwbasic
یک شنبه 19 اردیبهشت 1389, 07:39 صبح
اینم یه لینک دیگه که همراه کد می باشد که Designer ای هست که دارای قابلیت های زیر می باشد
1- undo/redo
2- copy /paste
3- TAbOrder
4- Grid/snap

http://www.codeproject.com/KB/miscctrl/DesignSurfaceManager_Ext.aspx

hojjatshariffam
دوشنبه 20 اردیبهشت 1389, 00:16 صبح
واقعا عالی بود دوست من .

از برنامه نویسشم تشکر کردم

gwbasic
پنج شنبه 26 آبان 1390, 00:06 صبح
این پستو خیلی وقت پیش زدم دیدنش خالی از لطف نیست

Arash_janusV3
پنج شنبه 26 آبان 1390, 11:28 صبح
با سلام
اگر بخواهیم drag drop کردن هم استفاده کنیم چطوری می شه این کار رو کرد
یعنی مثل visual کاربر texbox رو بگیره و بیاره روی فرم؟

gwbasic
پنج شنبه 26 آبان 1390, 12:08 عصر
پستهای قبلی رو نگاه کنید نمونه کد هست با قابلیت ToolBox

Mahmoud Zaad
پنج شنبه 26 آبان 1390, 14:31 عصر
salam,
man nafahmidam in codo koja bayad benevisam??????

سلام
بعد از
InitializeComponent(); (اون بالای فرم) بنویس در ضمن دوست عزیز تاپیک رو فینگلیش می نویسی مدیرا میان حذفش میکنن!