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

نام تاپیک: بدست آوردن فرم جاری

  1. #1

    Post بدست آوردن فرم جاری

    سلام خدمت دوستان . من 3 تا فرم دارم . در فرم اصلی یک دکمه هست . این دکمه یک سری اطلاعات رو به یکی از دو فرم دیگه پاس میده . چه جوری تو همین دکمه کاری کنم که اگه فرم 2 باز باز بود x رو پاس بده . یا اگه فرم 3 باز بود y رو پاس بده . فرم ها با متد show فراخوانی می شوند .

    قبلا" از راهنمائیتون ممنونم .

  2. #2

    نقل قول: بدست آوردن فرم جاری

    نقل قول نوشته شده توسط dark-man مشاهده تاپیک
    سلام خدمت دوستان . من 3 تا فرم دارم . در فرم اصلی یک دکمه هست . این دکمه یک سری اطلاعات رو به یکی از دو فرم دیگه پاس میده . چه جوری تو همین دکمه کاری کنم که اگه فرم 2 باز باز بود x رو پاس بده . یا اگه فرم 3 باز بود y رو پاس بده . فرم ها با متد show فراخوانی می شوند . قبلا" از راهنمائیتون ممنونم .
    سلام.
    Office Automation Model یا همون مدلی که نرم افزارهای Office از اون استفاده میکنن، یکی از بهترین انتخابها برای نرم افزارهای Windows Form ای هستش. برای همین بهتون توصیه میکنم، نحوه طراحی برنامه رو تغییر بدید و به این سبک برنامه رو طراحی کنید.

    به اعتقاد من عدم استفاده از یک مدل مناسب در برنامه، باعث تحمیل سختیها، محدودیتها و دوباره کاریهایی در انجام پروژه میشه که استفاده از یک مدل مناسب میتونه اونها رو محو میکنه.

    پیدا کردن یک فرم باز تو برنامه با گذاشتن یکی دو متغیر رفع میشه، اما پیچیدگیهایی رو به کار تحمیل میکنه که مطلقا نیازی به اونها نیست. فرض کنید غیر از پنجره اصلی برنامه، دو پنجره باز دیگه هم دارید، و در اون دو پنجره کاربر تغییراتی اعمال کرده. حالا کاربر پنجره اصلی رو میبنده. روش صحیح تو این مرحله، اینه که هر یک از دو پنجره به ترتیب جلو بیان، و روی هر کدوم پرسیده بشه که "این اطلاعات رو هنوز ذخیره نکردین، میخواهید اینکارو کنید؟" و کاربر بتونه بگه بله، نه، و Cancel. اگر شما مدل نداشته باشید، چطور میخواهید این کارو کنید؟

    بازم میشه با چند تا متغیر اینم سنبل کرد و ... اما همین کدهای نابسمان تولید شده برای رفع مشکلات کوچک پیش اومده، در پایان پروژه تبدیل به یک کابوس هنگام نگهداری پروژه میشه. همه اینها رو گفتم تا چشمتون رو به فرایندهایی که قبلا به این منظور طراحی شدن باز کنم، و بهتون این اطمینان رو بدم که اگر از OAM استفاده کنید، نه تنها ضرر نمیکنید، بلکه در نهایت پروژه ای خواهید داشت که به روش مهندسی طراحی شده.

    پاورقی: وقتی پنجره ای رو باز میکنید، Reference به اونو جایی نگه دارید، تا هنگام نیاز، بتونید چک کنید که آیا اون Reference تهی هستش یا خیر. اگر تهی نبود، پس یک پنجره بازه. اما کدوم پنجره؟ اینو میتونید از Type اون Reference متوجه بشید. سپس، میتونید با استفاده از یک Public Property متغیر x و y مورد نظرتون رو بهش پاس کنید. (اما بازم تکرار میکنم، از یک Model مناسب در نرم افزارتون بهره بگیرید و به این روشهای بزن و برو متوسل نشید).

  3. #3

    نقل قول: بدست آوردن فرم جاری

    نقل قول نوشته شده توسط mehdi6755 مشاهده تاپیک
    سلام.
    Office Automation Model یا همون مدلی که نرم افزارهای Office از اون استفاده میکنن، یکی از بهترین انتخابها برای نرم افزارهای Windows Form ای هستش. برای همین بهتون توصیه میکنم، نحوه طراحی برنامه رو تغییر بدید و به این سبک برنامه رو طراحی کنید.

    به اعتقاد من عدم استفاده از یک مدل مناسب در برنامه، باعث تحمیل سختیها، محدودیتها و دوباره کاریهایی در انجام پروژه میشه که استفاده از یک مدل مناسب میتونه اونها رو محو میکنه.

    پیدا کردن یک فرم باز تو برنامه با گذاشتن یکی دو متغیر رفع میشه، اما پیچیدگیهایی رو به کار تحمیل میکنه که مطلقا نیازی به اونها نیست. فرض کنید غیر از پنجره اصلی برنامه، دو پنجره باز دیگه هم دارید، و در اون دو پنجره کاربر تغییراتی اعمال کرده. حالا کاربر پنجره اصلی رو میبنده. روش صحیح تو این مرحله، اینه که هر یک از دو پنجره به ترتیب جلو بیان، و روی هر کدوم پرسیده بشه که "این اطلاعات رو هنوز ذخیره نکردین، میخواهید اینکارو کنید؟" و کاربر بتونه بگه بله، نه، و Cancel. اگر شما مدل نداشته باشید، چطور میخواهید این کارو کنید؟

    بازم میشه با چند تا متغیر اینم سنبل کرد و ... اما همین کدهای نابسمان تولید شده برای رفع مشکلات کوچک پیش اومده، در پایان پروژه تبدیل به یک کابوس هنگام نگهداری پروژه میشه. همه اینها رو گفتم تا چشمتون رو به فرایندهایی که قبلا به این منظور طراحی شدن باز کنم، و بهتون این اطمینان رو بدم که اگر از OAM استفاده کنید، نه تنها ضرر نمیکنید، بلکه در نهایت پروژه ای خواهید داشت که به روش مهندسی طراحی شده.

    پاورقی: وقتی پنجره ای رو باز میکنید، Reference به اونو جایی نگه دارید، تا هنگام نیاز، بتونید چک کنید که آیا اون Reference تهی هستش یا خیر. اگر تهی نبود، پس یک پنجره بازه. اما کدوم پنجره؟ اینو میتونید از Type اون Reference متوجه بشید. سپس، میتونید با استفاده از یک Public Property متغیر x و y مورد نظرتون رو بهش پاس کنید. (اما بازم تکرار میکنم، از یک Model مناسب در نرم افزارتون بهره بگیرید و به این روشهای بزن و برو متوسل نشید).


    از راهنمائی که کردید ممنونم . من مدت زیادی نیست که با #C کار می کنم و فکر کنم برای یک تازه کار این موارد و مشکلات عادی باشه . ممنون میشم اگه در مورد Office Automation Model مرجع یا راهنمائی رو معرفی کنید تا بتونم ازش استفاده کنم

  4. #4

    نقل قول: بدست آوردن فرم جاری

    نقل قول نوشته شده توسط dark-man مشاهده تاپیک
    از راهنمائی که کردید ممنونم . من مدت زیادی نیست که با #C کار می کنم و فکر کنم برای یک تازه کار این موارد و مشکلات عادی باشه . ممنون میشم اگه در مورد Office Automation Model مرجع یا راهنمائی رو معرفی کنید تا بتونم ازش استفاده کنم
    سلام.
    برای شروع، میتونید به این مقاله ها رجوع کنید:

    Implement a Microsoft Word-like Object Model for Your .NET Framework Application

    Developing Next Generation Smart Clients using .NET 2.0 working with Existing .NET 1.1 SOA-based XML Web Services

  5. #5
    کاربر دائمی
    تاریخ عضویت
    آذر 1384
    محل زندگی
    کرمان-کرمان
    پست
    334

    نقل قول: بدست آوردن فرم جاری

    سلام

    معمولا با جستجو خیلی سریعتر میشه به جواب رسید
    چون اکثر مطالب در گذشته پرسیده شدند

    پست 11 این لینک رو ببینید


    موفق باشید

  6. #6
    کاربر دائمی آواتار saeed-kh
    تاریخ عضویت
    مهر 1387
    محل زندگی
    مازندران - بابل
    پست
    148

    نقل قول: بدست آوردن فرم جاری

    میتونی خاصیت Nameو خاصیت Text فرم جاری رو از این دستور بدست بیاری
    System.Windows.Forms.Form.ActiveForm

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

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