PDA

View Full Version : اجرای دستورات از داخل فرم دیگر



ciscozagros
دوشنبه 11 خرداد 1388, 17:12 عصر
سلام پس از جستجو فراوان می خواستم کمکم کنید
من یه فرم ورود اطلاعات دارم با دیتا گرید
یه دستور زیر یکی از دکمه ها نوشتم
یه فرم دیگه ایجاد کردم که مقداری رو برای این دستور میفرسته می خواستم وقتی از فرم دوم اطلاعت رو میفرستم همزمان دکمه فرم اول نیز کلیک بشه
در اصل میخوام کنترل روی فرم اول رو اجرا کنم

Unknownlive
دوشنبه 11 خرداد 1388, 17:28 عصر
خوب شما از فرم مورد نظر یک نمونه سازی کنید و از طریق ان به اجزای فرم دسترسی پیدا کنید و اما کنترل مورد نظر در فرم مورد نظر را به صورت Public در بیاورید.

bahar_engineer
دوشنبه 11 خرداد 1388, 17:30 عصر
فرض کنیم کنترلت یک باتن باشه که در رویداد کلیک اون یه سری دستور داری و می خوای اون اجرا بشه ...( که روی فرم اولت هم هست)

اونجایی که می خوای کنترلِ روی فرم اولت، اجرا بشه بنویس :



form1. button1_Click();


اینطوری اون کنترل فراخوانی می شه رویداد کلیکش ...

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

ciscozagros
سه شنبه 12 خرداد 1388, 10:15 صبح
مشکلم حل نشد فایل رو گذاشتم لطفا فایل رو ببین مشکل کجاست وی خوام وقتی روی گزینه جستجو در فرم دوم کلیک میکنم در فرم اول رویداد کلیک دکمه نمایش انجام بشه ممنون و سپاس گذار

NewFoxStudent
سه شنبه 12 خرداد 1388, 10:54 صبح
ببین همونیه که میخواستی

31558

ciscozagros
سه شنبه 12 خرداد 1388, 11:10 صبح
فایل رو اشتباه گذاشته بودم

NewFoxStudent
سه شنبه 12 خرداد 1388, 11:20 صبح
فکر کنم با دیدن همون فایل تو پست 5 به نتیجه برسی

bahar_engineer
سه شنبه 12 خرداد 1388, 13:43 عصر
کدتو به این شکل توی فرم 2 در رویداد کلیک روی دکمه سرچ تغییر بده :



f1.button2_Click(sender,e);


در واقع به تابع آرگومان دادیم ... ببین درست می شه؟

ciscozagros
سه شنبه 12 خرداد 1388, 14:05 عصر
مشکل حل نشد هیچ اتفاقی نمی افته

Mahdi1001
سه شنبه 12 خرداد 1388, 14:39 عصر
لطفا کدتونو بزارید ببینیم موشکلتون کجاست

NewFoxStudent
سه شنبه 12 خرداد 1388, 14:42 عصر
چرا از اون روش که توی پست 5 فایلش رو گذاشتم استفاده نمیکنید
مشکلی داره

bahar_engineer
سه شنبه 12 خرداد 1388, 15:14 عصر
ok

دقیقاً مراحل زیر رو انجام بده

برو توی فرمی که دکمه نمایش هست (form1) توی solution explorer کنار فرم علامت + رو گسترش بده و designer فرم مورد نظر رو باز کن برو توی اون اونجایی که دکمه نمایش رو تعریف کرده private رو به public تغییر بده ...

حالا توی همون فرم روی دکمه نمایش دابل کلیک کن و اون تابع رو هم از private به public تغییر بده

یعنی



public void display_Click(object sender, EventArgs e)
{
}


بعد توی فرم 2 روی دکمه جستجو دابل کلیک کن و این کدها رو اضافه کن



Form1 f = new Form1();
f.Tag = this;
f.button1_Click(sender, e);


حالا باید درست بشه !! من امتحان کردم اگه نشد بگو واست سورس نمونه بذارم

ciscozagros
سه شنبه 12 خرداد 1388, 16:44 عصر
آقا درست نمیشه هر کاری می کنم

bahar_engineer
سه شنبه 12 خرداد 1388, 17:03 عصر
پروژه شما روی سیستم من خطای دیتابیس می ده نمی تونم روی اون اعمال کنم اما خودم یه پروژه ساده اشو گذاشتم بررسی کن درست کار می کنه..