why we use @Master type?

14,405

Solution 1

From Microsoft Docs you are defining the type of the Master property, which allows you to access the properties of your MasterPage derived class.

Provides a way to create a strongly typed reference to the ASP.NET master page when the master page is accessed from the Master property.

As an example:

this.Master.SomePublicPropertyOfMaster = Value;

Solution 2

Specifying the @ MasterType directive with a type of MyMasterPage results in the following property definition in the code behind class:

public new MyMasterPage Master {
  get {
    return ({MyMasterPage})base.Master;
  }
}

This property definition is created by the BuildMiscClassMembers method of the TemplateControlCodeDomTreeGenerator class.

Share:
14,405

Related videos on Youtube

Usman
Author by

Usman

a software engineer love to work on Microsoft .Net with a flavor of C#.Learn to work on mobile development and want to become Microsft Certified Professional Developer(MCPD). :) profile for Usman on Stack Exchange, a network of free, community-driven Q&A sites http://stackexchange.com/users/flair/448162.png

Updated on June 04, 2022

Comments

  • Usman
    Usman almost 2 years

    if we have a master page and a content page.so the content page @Page directive look like as

    <%@ Page Language="C#" MasterPageFile="~/Site1.Master" .... />
    

    so , in order to access master page controls in content page we should have to use

    <%@ MasterType VirtualPath="~/Site1.Master" %>
    

    so , my question is this why we use @MasterType directive when we already define in the @page directive that this content page is in the master page (here -- Site1.Master)

  • Usman
    Usman over 12 years
    @Lloyd..will you please tell me what do you mean by STRONGLY TYPE??since i am novice in programming so i have no idea about it...
  • Lloyd
    Lloyd over 12 years
    It means the Type is explicitly declared, so you do not need to cast it ie: MyMasterPage masterPage = (MyMasterPage)this.MasterPage.
  • user3207158
    user3207158 about 7 years