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

نام تاپیک: ارسال مقدار جعبه متن به فرم ديگه

  1. #1

    ارسال مقدار جعبه متن به فرم ديگه

    من در فرم 1 مقداري در جعبه متن وارد كردم مي خواستم ميشه در فرم2 از مقدار جعبه متن فرم 1 استفاده كرد يا نه

  2. #2

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    بله میشه و حداقل از دو طریق میتونین این کار رو انجام بدین:
    1- برای فرم2 یک constructor بسازین که یک متغیر string میگیره و وقتی میخواستین فرم2 رو باز کنین با این constructor اونو show کنین.
    2 - TextBox رو در فرم1 public کنین اینطوری در فرمهای دیگه هم بهش دسترسی دارین که اصصصصصصصصصصصلا راه خوبی نیست.
    من راه اول رو پیشنهاد میکنم.

  3. #3
    کاربر دائمی آواتار shahrzad87
    تاریخ عضویت
    مهر 1388
    محل زندگی
    شیراز
    پست
    259

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    می شه درباره constructor برای فرم بیشتر توضیح بدین ؟

  4. #4

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    لطفا ميشه درباره constructor توضيح بيشتري بديد؟؟؟؟

  5. #5
    کاربر جدید آواتار x_epro_x
    تاریخ عضویت
    آبان 1390
    محل زندگی
    همین نزدیکیا ....
    پست
    10

    Thumbs up نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    سلام
    اگه تازه واردی که همون خودت محتویاتش رو دستی بفرست به فرم 2 چون این constructor که دوستمون گفت یکم گیج کنندست
    آخرین ویرایش به وسیله x_epro_x : دوشنبه 23 آبان 1390 در 15:39 عصر دلیل: با دلفی اشتبا گرفتم شرمنده

  6. #6

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    هر فرم یک constructor داره که هم نام فرم هست و در اون تابع Initializecomponent(0 رو داریم که وظیفه شکل دهی فرم و کنترلهای اون و تخصیص prperty ها رو دارهودر حالت پیش فرض این constructor هیچ پارامتر ورودی نمیگیره ولی شما بسته به نیازت میتونی constructor خودت رو تعریف کنی.یعنی برای حل مشکل شما:
    در فرم 1 میخوایم فرم 2 رو صدا بزنیم:
    Form 2 f2 = new Form2(textbox1.Text);
    f2.Showdialog();

    و در فرم 2 ابتدا construcor موردنظرمون رو تعریف میکنیم:
    Public Form2(string val)
    {Initializecomponent();
    txtval = val;
    }

    که txtval یک متغیر عمومی از نوع string هست که در فرم 2 تعریف کردیم. حالا تو فرم2 هر جا میخوای به مقدار اون textbox تو فرم1 دسترسی داشته باشی،میتونی از این txtval استفاده کنی.
    مشکلی بود بگین تا با هم حلش کنیم.

  7. #7
    کاربر جدید آواتار x_epro_x
    تاریخ عضویت
    آبان 1390
    محل زندگی
    همین نزدیکیا ....
    پست
    10

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    ایول خوب گفتی فقط یه چیزی
    تو کدی که دادی حرفی از const نیست بهتره اینجوری بگیم که تو فرم 1 یک شی از کلاس فرم 2 تعریف میکنیم بعدش تو فرم 2 هم متغیری رو به صورت عمومی تعریف میکنیم و بعدش میفرستیم واسه فرم 2 در واقع یک پارامتر واسه فرم 2 میسازیم

  8. #8
    کاربر دائمی آواتار ya30ien2
    تاریخ عضویت
    تیر 1390
    محل زندگی
    بوشهر-برازجان
    پست
    715

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه


  9. #9

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    نقل قول نوشته شده توسط x_epro_x مشاهده تاپیک
    ایول خوب گفتی فقط یه چیزی
    تو کدی که دادی حرفی از const نیست بهتره اینجوری بگیم که تو فرم 1 یک شی از کلاس فرم 2 تعریف میکنیم بعدش تو فرم 2 هم متغیری رو به صورت عمومی تعریف میکنیم و بعدش میفرستیم واسه فرم 2 در واقع یک پارامتر واسه فرم 2 میسازیم
    اون تابع هم نام با نام Form2 همون constructor برای فرم 2 میباشد...

  10. #10
    کاربر دائمی آواتار abdullah20
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    1,211

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    textbox1.text(Application.OpenForms["Form2"].Controls["Textbox1"] as TextBox).text();

  11. #11
    کاربر دائمی آواتار shahrzad87
    تاریخ عضویت
    مهر 1388
    محل زندگی
    شیراز
    پست
    259

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    کدتون خطا داره! این کد رو کجا باید نوشت ؟

  12. #12
    کاربر دائمی آواتار abdullah20
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    1,211

    نقل قول: ارسال مقدار جعبه متن به فرم ديگه

    تو فرم 1
     textBox1.Text = (Application.OpenForms["Form2"].Controls["Textbox1"] as TextBox).Text;

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

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