کدنویس۲۱

کدنویس۲۱

با کد نویس 21 کد نویس باشید.
کدنویس۲۱

کدنویس۲۱

با کد نویس 21 کد نویس باشید.

ایجاد چند فرم در فرم دیگر

سلام دوستان امروز آموزش جالبی در رابطه با اینکه چند فرم را در یک فرم دیگر در سی شارپ ایجاد کنیم. شاید دیده باشید که در برنامه ای برای انجام کار ها چند فرم وجود دارد که داخل هر فرم کاری انجام می دهیم امّا نمی دانید که چطور همچین برنامه ای بنویسید و در یک فرم آن چند فرم دیگر ایجاد کنید. با ما همراه باشید!

 

 

ابتدا پس از ایجاد یک پروژه فرم اپ C# در ویژگی های فرمتان (که نام آن را Form1 باید بگذارید) بگردید و IsMdiContainer را پیدا کرده و مقدار آن را برابر true بگذارید. خواهید که رنگ فرم تغییر می کند.

یک MenuStrip ایجاد کرده و گزینه new را به آن بیفزایید.


Mdi


وارد سربرگ Project در VS(ویژوال استدیو) شوید و گزینه Add Window Form... را بزنید و یک فرم جدید با نام Form2 بسازید.


add_form.jpg



 روی new دابل کلیک کنید تا به کد کلیک آن وارد شوید و کد زیر را در آن بنویسید.

1
2
3
Form2 f = new Form2();
            f.MdiParent = this;
            f.Show();

اینجا خالی از لطف نیست که نکته ای راجع به بازکردن فرم ها بگویم؛ در کد بالا همانگونه که دیدید ابتدا شئی به نام f از Form2 ساختیم ، ویژگی MdiPanent آن را برابر فرمی که در آن هستیم قرار دادیم و در آخر با کد f.Show(); آن را نمایش دادیم. ما می توانستیم به جای آن از f.ShowDialog(); استفاده کنیم ولی در آن صورت در موقع اجرا خطا دریافت می کردیم چون نمی توان به یک دیالوگ فرم پدر نسبت داد(یا در واقع نمی توان فرم فرزند را به صورت دیالوگ نمایش داد.). اگر هم خط دوّم را حذف کنیم خطایی دریافت نمی کنیم ولی پس از نمایش Form2 تا بسته شدن آن به Form1 دسترسی نداریم(درست مانند دیالوگ ها!).

نکته: یک فرم نمی تواند هم فرزند و هم پدر باشد یعنی اگر ویژگی IsMdiContainer را در فرمی برابر true قرار دیگر نمی توانید کد خط 2 را اجرا کنید یعنی دیگر نمی توانید یک فرم والد برای آن تعریف کنید.

امیدوارم در ساخت برنامه های کاربردی به کارتان بیاید.

تا آموزش های دیگر خداحافظ

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد