مشاهده نسخه کامل
: صدا کردن فرم ها در برنامه ی چند فرمی c#
میدونم سوال خیلی خیلی آسونیه :20:
بلد بودم ولی یادم رفته !
فرض کنید سه تا فرم توی پروژه داریم که فرم دومی و سومی فرزند فرم اولی هستن.
روی فرم دومی یه دکمه هست.
روی فرم سومی هم یه دکمه هست.
روی دکمه ی فرم سومی میخوایم کدی رو بنویسیم که اگه روش کلیک بشه دکمه ی فرم دومی رنگش تغییر کنه :10:
در واقع میخوام بفهمم چه جوری فرمای دیگه رو صدا بزنم و به هم ربطشون بدم !
یعنی کاری که تو vb.net راحت میشه انجام داد :
Form2.Button1.BackColor = Color.Green
H A M A S
08-08-2011, 18:35
میدونم سوال خیلی خیلی آسونیه :20:
بلد بودم ولی یادم رفته !
فرض کنید سه تا فرم توی پروژه داریم که فرم دومی و سومی فرزند فرم اولی هستن.
روی فرم دومی یه دکمه هست.
روی فرم سومی هم یه دکمه هست.
روی دکمه ی فرم سومی میخوایم کدی رو بنویسیم که اگه روش کلیک بشه دکمه ی فرم دومی رنگش تغییر کنه :10:
در واقع میخوام بفهمم چه جوری فرمای دیگه رو صدا بزنم و به هم ربطشون بدم !
یعنی کاری که تو vb.net راحت میشه انجام داد :
Form2.Button1.BackColor = Color.Green
frm new form1
frm.Button1.BackColor = Color.Green
نه دوست عزیز اینجوری نمیشه !
علاوه بر اینکه تعریف متغیرتون اشتباهه !
با این تعریفم دسترسی به کنترل های فرم غیر ممکنه.
باید مشخصه ی Modifire اونا رو به Public تغییر داد
parvizamd
08-08-2011, 18:51
سلام مجید جان:
بیا ضمینه رو دانلود کنی:چی نمی تونم اینجا ضمینه کنم واقعا که ... اشکال نداره تو mediafire آپلود می کنم
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
H A M A S
08-08-2011, 18:55
نه دوست عزیز اینجوری نمیشه !
علاوه بر اینکه تعریف متغیرتون اشتباهه !
با این تعریفم دسترسی به کنترل های فرم غیر ممکنه.
باید مشخصه ی Modifire اونا رو به Public تغییر داد
شرمنده ما هم مثل شما vb کاریم
میخواستم درستش کنم اینترنتم قطع شد
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
آره راس میگی!!
فکر کردم به آسونی vb هست!!
سلام.
ضمن اینکه تاپیک تکراریه...قبل از زدن تاپیک لطفاً جستجو بفرمایید...
شما میبایست یک متغیر به صورت static تعریف کنید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
حال آنکه به صورت زیر آن را مقدار میدهید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
استفاده:
Form1.THIS.button1.BackColor = Color.Red;
روش دوم:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق و پیروز باشید در پناه حق.
خیلی ممنون از راهنماییتون !
روش اول کار کرد.
روش دوم ارور میده ! :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
بازم ممنون از هر سه تاییتون :20:
سلام.
فکر کنم شما دارید فرم1 رو به فرم2 تبدیل میکنید اینکار غیر ممکنه.
لطفاً کدتونو بذارید...
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
هردو باید فرم1 یا هر دو فرم2 باشند.
neda_traveler
14-08-2011, 13:53
سلام به دوستان
من الان در فرم اولم checklistbox دارم
و در فرم دیگه نیاز به تعداد و نام اونهایی که تیک خوردن دارم
اما در فرم بعدی به تعداد اعضا checklistbox دسترسی ندارم و همش مقدار صفر میده
با وجودی که public هم کردم
ممنون میشم کمکم کنیدا
سلام توی فرمی که checklistbox دارید یک پروپرتی به صورت زیر تعریف کنید مثلاً Form2
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
برای استفاده در فرم های دیگه:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
Mr Mohabat
14-08-2011, 16:19
سلام بر داداش علی
یه روشی بود قبلا که به وسیله using فرم رو فراخوانی می کردن
الان یادم رفته میشه برام بزارید
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
neda_traveler
15-08-2011, 07:53
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اما در اینجا ما باید f.ShowDialog();
این رو حتما بذاریم
اما من نمی خوام در فرم بعدی که هستم Form2 باز بشه
و بدون این هم که تابعه فراخونی نمیشه
پس باید چیکار کنم؟
سلام دوستان.
سلام بر داداش علی
یه روشی بود قبلا که به وسیله using فرم رو فراخوانی می کردن
الان یادم رفته میشه برام بزارید
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
ابراهیم جان درسته میتونید از این روش برای Dispose کردن فرمتون در پایان کار استفاده کنید.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیداما در اینجا ما باید f.ShowDialog();
این رو حتما بذاریم
اما من نمی خوام در فرم بعدی که هستم Form2 باز بشه
و بدون این هم که تابعه فراخونی نمیشه
پس باید چیکار کنم؟
متوجه نشدم:31:.
خوب میتونید چک لیست رو توی همون فرم اول بذارید کارتون هم راحت میشه.
neda_traveler
15-08-2011, 10:44
نه نمیشه
چون من این چک لیست باید در یک فرم کلی بذارم چون هر کدوم از دکمه ها رو که بزنم محتویات اینو لازم داره
پس باید در فرم اول باشه
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اما در اینجا شما دوباره فرم اول باز کردید که من نمی خوام باز شه
و اگر هم
f.ShowDialog();
اینو ننویسم که تابعی که در صفحه فرم2 هست فراخونی نمیشه
حالا باید چی کار کنم؟
با تشکر از زحمات شما:11:
من متوجه نمیشم میخواید چیکار کنید.
وقتی فرم نمایش داده نشه پس چطوری چک لیست باکس رو کاربر تیک بزنه؟
اگه فرم نمایش داده نمیشه اصلاً چرا باید فرم ساخته بشه؟
neda_traveler
16-08-2011, 09:11
منظور من اینه که در فرم اول چک لیست نمایش داده میشه همون جا کاربر انتخاب میکنه
بعد باید در صفحه دوم از همون موارد انتخاب شده در چک لیست استفاده کنه
برا همین دیگه نیازی به باز شدن صفحه اول نیست چون همه چیز انتخاب شده
neda_traveler
16-08-2011, 12:36
ممنون جوبشو پیدا کردم
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.