PDA

View Full Version : استفاده ار رویداد button_Click برای یه UserControl توwinapp



mahboube
پنج شنبه 27 خرداد 1389, 11:15 صبح
سلام دوستان
یه button که با wpf طراحی شده و حالا می خوام تو WinApp ازش استفاده کنم،وقتی به صورت یه UserControl ازش استفاده می کنم، فقط رویداد button_ChildChanged رو می تونم تعریف کنم براش!!ولی می خوام تو WinApp رویداد button_Click رو استفاده کنم.ممنون می شم اگر کسی راهنمایی کنه.
(البته وقتی توی فایل Form1.Designer.cs) این کنترل (UserControl )رو دنبال می کنم از نوع eventHandler تعریف میشه و فقط button_ChildChanged رو می شه براش تعریف کرد).


this.button3 = new System.Windows.Forms.Integration.ElementHost();


this.userControl11 = new WindowsFormsApplication18.UserControl1();


****


private UserControl1 userControl11;


this.button3.Child = this.userControl11;


this.button3.ChildChanged += new System.EventHandler<System.Windows.Forms.Integration.ChildChangedEvent Args>(this.button3_ChildChanged);
اینا تعریفش تو هستوممنون میشم اگر کسی اطلاعاتی داره راهنمایی کنه.
(و از آقایون مدیر هم عذر می خوام اگر سوال میتدیانه ای هست!!!)

رضا عربلو
پنج شنبه 27 خرداد 1389, 17:20 عصر
بایستی یک اونت برای USERcONTROL تان تعریف کنید که هنگامی که دکمه کلیک می شود فراخوانی شود.
اینجا را ببینید:
http://barnamenevis.org/forum/showthread.php?t=169622

mahboube
شنبه 29 خرداد 1389, 10:08 صبح
بایستی یک اونت برای USERcONTROL تان تعریف کنید که هنگامی که دکمه کلیک می شود فراخوانی شود.
اینجا را ببینید:
http://barnamenevis.org/forum/showthread.php?t=169622
ممنون آقای عربلو
حالا یه سوال دیگه:
میشه من button هایی که قبلا تعریف کردم رو یه جوری با تغییر کلاسشون یا یه چیزی تو این مایه ها به usercontrol تبدیل کنم؟چون می خام یه تو طراحی پروژه ی تقریبا بزرگ ازwpf استفاده کنم.که نخوام دکمه ها رو دوباره اضافه کنم.همونا رو تغییر بدم.
تو فایل designer ش مثلا!یه جورایی ارث بری و اینا!!!
ببخشید اگر مبهم یا چرت پرسیدم!!!
ممنونم.


مشکلم حل شد.
باید یه سری تعریفارو توفایل form1.designer.csتغییر میدادم.(آبیارو!)

this.button1 = new System.Windows.Forms.Integration.ElementHost();
// button1
//
this.button1.Location = new System.Drawing.Point(27, 73);
this.button1.Name = "button1";
this.button1.Text = "button1";
this.button1.Child = this.userControl32;

//
// Form1
//
this.Controls.Add(this.button1);
#endregion

private System.Windows.Forms.Integration.ElementHost button1;

البته نمی دونم چقدر کار خردمندانه ایی!! هست.ولی خب من همین راه بیشتر به ذهنم نرسید،البته برا وقتایی که شما بخواین button هایی که قبلا ایجاد کردید رو تغییر بدین.(مثلا مجبور نشین دوبار position شون رو تنظیم کنید.)