Как обратиться к MasterPage из ASPX страницы

Я думаю, многим приходится в своей работе пользоваться MasterPages, и решил я поделиться тем, как можно обращаться из ContentPlaceHolder’a к MasterPage.

Например, на MasterPage находится CheckBox, к которому мы хотим обратиться: снять пометку, или, наоборот – поставить. Вот его код в Site.master:


В Site.master.cs нужно поместить следующий код:

   public bool MyChkVideo
    {
        get
        {
            return chkVideo.Checked;
        }
        set
        {
            chkVideo.Checked = value;
        }
    }

А в aspx в страницу, сразу после

<%@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Search.aspx.cs" Inherits="Search" %>

строчку

<%@ MasterType VirtualPath="~/Site.master" %>

Теперь к элементу checkbox можно обратиться из MasterPage! В aspx.cs, через конструкции:

bool blnChkAuto = Master.MyChkAuto;
или Master.MyChkAuto = false;

Точно так же, можно обращаться к любым другим контролам на MasterPage.

Leave a comment

3 Comments

  1. спасибо действительно пригодилось

    Ответить
  2. г-н Тараканофф

     /  09.01.2010

    Спасибо, пригодилось :)

    Ответить
  3. ntnull

     /  22.01.2010

    классика это

    Ответить

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>