Доступ к MasterPage из страницы ASPX
Часто приходится в своей работе пользоваться MasterPages и решил я поделиться тем, как можно обращаться из ContentPlaceHolder‘a к MasterPage.
Например, на MasterPage находится CheckBox, к которому мы хотим обратиться: снять пометку, или, наоборот – поставить. Вот его код в Site.master:
<asp:CheckBox ID=»chkVideo» runat=»server» CssClass=»chkText» Text=»только с видео» EnableViewState=»False» Checked=»True» />
В 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.
Вы можете отслеживать комментарии к этой записи с помощью RSS 2.0. Комментарии и эхо-тестирование не разрешены.


Обсуждение закрыто.