نمایش نتایج 1 تا 7 از 7

نام تاپیک: استفاده از چند فرم در برنامه

  1. #1

    Unhappy استفاده از چند فرم در برنامه

    دوستان سلام

    من در حال نوشتن یک برنامه هستم که یک فرم اصلی دارد. من از طریق راست کلیک کردن روی نام Solution برنامه ام، در بخش Solution Explorer یک Windows Form به پروژه ام اضافه کردم و نامش را هم frmcustomoption گذاشتم.
    خواستم از طریق یک Button در فرم اصلی این فرم دوم را فراخوانی کنم اما با کمال تعجب دیدم :
    frmcustomoption.ShowDialog();
    نداریم !!!!
    (در حالی که توی اکثر سایت ها دیدم این کد برای نمایش فرم های دیگر در پروژه استفاده شده است.)
    و خطای زیر را مشاهده کردم :
    An object reference is required for the nonstatic field, method, or property 'System.Windows.Forms.Form.ShowDialog()'
    دوستان لطفا کمکم کنید تا مشکلم حل بشود.
    فقط با عرض معذرت کامل توضیح دهید.

  2. #2
    VIP آواتار Sajjad.Aghapour
    تاریخ عضویت
    مهر 1386
    محل زندگی
    اهل کاشانم .. روزگارم بد نیست
    پست
    1,265

    نقل قول: استفاده از چند فرم در برنامه

    خوب دوست عزیز شما قبل از استفاده از هر کلاسی باید یک ابجکت از اون بسازی...
    باید اینطوری بنویسی...

    frmcustomoption obj = new frmcustomoption();
    obj.ShowDialog();
    Close your eyes, take a deep breath, click your heels three times, and say, "There's no better thing than Inversion of Control and Dependency Injection, generic specialization, the decorator pattern, chains of responsibilities, and extensible software."

  3. #3

    Talking نقل قول: استفاده از چند فرم در برنامه

    ممنون واقعا ممنون
    sajjadlove عزیز تشکر میشه یه مقداری توضیح بدی که چه مواقعی باید آبجکت ساخت ؟
    بازم ممنون.

  4. #4

    نقل قول: استفاده از چند فرم در برنامه

    ببخشید باز هم یک مشکل در این رابطه دارم!
    خب مشکل نمایش یک فرم دیگه حل شد ولی حالا می خوام از متغیر های فرم اصلی در این فرم جدید بهره بگیرم اما اینها رو نمیشناسه در حالیکه در فرم اصلی اونها رو به صورت عمومی معرفی کرده ام. مثلا Picturebox من رو هم که در فرم اصلی هست نمیشناسه !!!
    باید چه کنم تا به تمام اطلاعات فرم اصلی از جمله کنترل ها و متغیر ها دسترسی داشته باشم؟
    ممنون می شوم کمکم کنید آخه تازه کارم و تا الان برنامه هام همه تک فرمی بودن !!!! (چه بی سواد)

    بازم ممنون.

  5. #5
    کاربر دائمی آواتار corona
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    مشهد
    پست
    188

    نقل قول: استفاده از چند فرم در برنامه

    ببین دوست عزیز برای استفاده از متغیرهای یک فرم توی فرم دیگه تنها عمومی کردن اونها کافی نیست ، شما وقتی سطح دسترسی متغییر ها و کنترل ها رو عمومی می کنی ، یعنی اینکه فقط به توابع و کلاسهای دیگه در همون فایل اسمبلی اجازه دسترسی به این متغییر ها رو دادی نه به کلاس دیگه ای در یک فرم جدا و اسمبلی جدا . خوب حالا برای حل این مشکلت دو راهی که خودم یاد دارم رو بهت میگم : 1- اون متغییر ها و کنترل هایی کم می خوای تو فرم دیگه بهشون دسترسی داشته باشی باید به صورت static تعریف کنی ، با اینکار به کامپایلر میگی که برای استفاده از این متغییرها نیازی به شی از نوع کلاس نیست و این متغییر های هر جای برنامه و به صورت classname.variablename قابل استفاده هستن . راه دوم اینکه اگه نمی خوای اون متغغیرها متغییر سطح کلاس باشن static نباشن اینه که .قتی داری توی فرم فعلی که همه متغغیرهای مورد نیازت توی فرم دیگه درش تعریف شده ، فرم دیگه برنامت رو صدا می زنی بیای همه اون متغغیرهایی رو که لازم داری توی فرم دیگه به سازنده اون فرم دیگه پاس بدی ، در این صورت هم میتونی از متغییرهای فرم فعلی در فرم دیگه استفاده کنی .

  6. #6

    نقل قول: استفاده از چند فرم در برنامه

    corona عزیز سلام
    دوست عزیز در مورد متغیر ها مشکلم با تعریف متغیر به شکل استاتیک حل شد اما همچنان با کنترل Picturebox که در فرم اصلی هست نمی توانم از طریق فرم دوم ارتباطی برقرار کنم ممنون می شوم من را راهنمایی کنی.
    در کل می خواهم به همه ی کنترل ها در همه ی فرم های پروژه ام دسترسی داشته باشم.
    در مورد راه حل دوم هم اگز برای شما ممکن هست مثالی مطرح بفرمایید.
    باز هم ممنون از شما.

  7. #7

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •