همانطور که می دانید با استفاده از تگهای معروف زیر قادر هستید که یک یوزر کنترل و یا custom control را در برنامه خود وارد کنید. مانند مثال زیر:
<%@ Register TagPrefix="test" TagName="header" Src="Controls/Header.ascx" %> <%@ Register TagPrefix="test" TagName="footer" Src="Controls/Footer.ascx" %> <%@ Register TagPrefix="ControlVendor" Assembly="ControlVendor" %>
<html> <body> <form id="form1" runat="server"> <test:header ID="MyHeader" runat="server" /> </form> </body>
|
این تگها به خوبی کار می کنند اما اگر تعداد صفحاتی که قرار است از این کنترلها استفاده کنند زیاد باشد، با مشکل مواجه خواهیم شد. ASP.Net راه حل ساده ای را پیشنهاد می کند. به جای اینکه این تگ را در تمام صفحه ها قرار دهیم، فثط یکبار آنرا در Web.Config در قسمت Pages->Controls به صورت زیر تعریف کنیم:
<?xml version="1.0"?>
<configuration>
<system.web> <pages> <controls> <add tagPrefix="test" src="~/Controls/Header.ascx" tagName="header"/> <add tagPrefix="test" src="~/Controls/Footer.ascx" tagName="footer"/> <add tagPrefix="ControlVendor" assembly="ControlVendorAssembly"/> </controls> </pages>
</system.web>
</configuration>
|
زمانی که کنترلها را به این ترتیب رجیستر کنید، می توانید در برنامه خود در هر صفحه، User control یا Master Page به سادگی از آن استفاده کنید و نیازی به تعریف مجدد آن در آن صفحه نیست.
<html> <body> <form id="form1" runat="server"> <test:header ID="MyHeader" runat="server" /> </form> </body> </html>
|