PDA

View Full Version : توضیح در مورد master page و نحوه ساخت و استفاده از اون



amir_masoud
چهارشنبه 09 فروردین 1385, 03:32 صبح
سلام
دوستان عزیز اگه ممکنه در مورد master page توضیحاتی رو بفرمائید .من چند تا مقاله خوندم و تا اونجایی که متوجه شدم می شه یه قالب و صفحه کلی ساخت و با کنترل place holder قسمتهای داینامیک رو تویه این صفحه قرار داد . اما طریقه استفاده از این کنترل رو نمی دونم به چه صورته .
فرض کنید که یه سایت با 15 تا صفحه داریم که این صفحات قالب کلیشون یکیه و هر صفحه فقط یه قسمت خاصش فرق می کنه . قبلا با user control ها این صفحات و قالب کلی رو می ساختم . اما حالا اگه قرار باشه فقط یه صفحه ساخته بشه به چه صورت باید فرضا این 15 تا قسمت داینامیک رو با این صفحه استفاده کرد .

Saeed_Taghvaee
چهارشنبه 09 فروردین 1385, 06:02 صبح
ببیند این کنترل دقیقا کارش همونیه که گقتی (البته نمیشه گفت کنترل بهتر بگیم ویژگی) . شما در پروژه اصلی یه فایل مثلاDefualt.master ایجاد کنید و توش غالب کلی سری صفحاتتون (هدر فوتر کناره ها تبلیغات و .....) رو توش پیاد کنید . به همون روش قبل شما در این روش تگ های اصلی مثل Body یا Head و Form رو فقط میتونین رو همون مستر پیج پیاده کنین البته شاید بشه رو صفحات دیگه تغییر داد ولی کدی که مایکروسافت پیشنهاد میکنه بیشتر به این شکله .
حالا اون قسمتی که در صفحات مختلف قراره فرق کنه یه کنترلی به نام asp:contentplaceholder ر فرم به شکل زیر بگذارید :

<asp:contentplaceholder id="Main_Content" runat="server">
</asp:contentplaceholder>

همون طور که میبیند خاصیت ای دی این Main_Content نام دارد. البته شما میتونید بی نهایت از این کنترل ها در قسمت های مختلف سایت پیاده سازی کنید که در صفحات مختلف متغیر باشد ولی فراموش نکنید که هر کدام یک ID متفاوت داشته باشن.
حالا فرض شما در این صفحات یه قسمت دارین که توش میخواهید همین قسمت های داینامیک رو پیاده کنید. حال به فایل aspx خود رفته و تمامی تگ ها رو به غیر از رهنمود هایی مثل Page , Register و ... پاک کنید.
یه تگ به نام asp:Content به شکل زیر توفایل بنویسید.

<asp:Content ContentPlaceHolderID="Main_Content" runat=server>
</asp:Content>
بین این دو قسمت اون کد داینامیک رو مث قبل بنویسید. همون طور که میبینید اتریبیوت و یا خاصیت ContentPlaceHolderID با نام Main_Content پاس شده یعنی در فایل مستر پیج در همون جایی که این تگ قرار گرفته دقیقا در همونجا هم خروجی صفحه نوشته میشه.
در ضمن فایل های مستر پیج تمام قبلیت و متد ها و اشای یک صفحه را دارا هستند و میتوانند آن ها هم به صورت کاملا دینامیک پیاده سازی شوند. همچنین شما اگه در یک دایرکتوری شوت هم باشید دیگر نیاز نیس آدرس تصاویر و قسمت های مختلف غالب رو عوض کنید برای اون صفحات داخل اون دایرکتوری این کار توسط مستر پیج ها هوشمند انجام میشود.

nazaninam
چهارشنبه 09 فروردین 1385, 19:22 عصر
http://iranasp.net/Articles/ShowArticle.aspx?articleid=164
http://iranasp.net/Articles/ShowArticle.aspx?articleid=163

اینا کامل توضیح دادن