Nu odată am avut nevoie să accesez un controller sau o proprietate din master page. Pentru propietati am cautat tot felul de artificii si clase ajutatoare care sa stocheze aceste date. In cazul controalelor am folosit metoda FindControl. Nici una din aceste metode nu este naturala si optima.
ASP.NET ne ofera posibilitatea de a declara un master type in content pages.
ASP.NET ne ofera posibilitatea de a declara un master type in content pages.
<%@ MasterType VirtualPath="~/locatie_master_page" %>
Prin aceasta metoda putem sa ne declaram proprietati in master page, pe care mai tarziu le putem apoi accesa din content pages. De exemplu daca in master page avem un controller pe care vrem sa il accesam din content page putem sa facem următoarea metoda://MasterPage
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="WA.SiteMaster" %>
...
<asp:Label id="Name" runat="server">Ionel</asp:Label>
//MasterPage Code Behind
public Label NameLabel { get; set; }
//ContentPage
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WA._Default" %>
<%@ MasterType VirtualPath="~/Site.master" %>
//ContentPage Code Behind
protected void Page_Load(object sender, EventArgs e)
{
Master.NameLabel.Text += " Vasile";
}
Putem sa ne declaram un master page de baza in care sa avem toate aceste proprietati.
Comments
Post a Comment