Попытка передать функцию из master на страницу содержимого с помощью делегата, проблема поиска contentcallevent в contentpage
ИНФОРМАТИВНАЯ ПРЕДЫСТОРИЯ:
I have a ddl control in master site, i would like to call the 'selectIndexChange event' that sits in master page, and i want to call it in a content page. the reason is because i have an adio.net function that populates a grid in my content page. when i select a new item from my drop down, i dont want the event to be triggered in master page bcs frm inside master page i cant call the adio.net function thats in content page. I thought that i could fix this if i pass the selectIndexChange event from the master to the content page with a delegate. then i would be able to call the function select indexchange and my adio.net code function will be in scope. :)
ПРОБЛЕМА С МОИМ КОДОМ:
при попытке настроить мою делегатскую функцию, которая вызывает selectindexevent из mater в content, я заметил красную линию под "contentCallEvent", которую невозможно найти, она не имеет ссылки. Может быть, это потому, что моя страница контента находится в панели?
ваша помощь будет очень признательна! заранее благодарю вас
мой код ниже
:обратите внимание, что моя страница контента находится в панели.
МАСТЕР-СТРАНИЦА
protected void ddlSites_SelectedIndexChanged(object sender, EventArgs e) { if (contentCallEvent != null) contentCallEvent(this, EventArgs.Empty); } public event EventHandler contentCallEvent;
Объект contentpage
private void Master_ddlSites_SelectedIndexChanged(object sender, EventArgs e) { //from here i should be able to call function and populate grid populateGridViewByID_Parent("TEST"); } protected void Page_PreInit(object sender, EventArgs e) { Page.Master.contentCallEvent += new EventHandler(Master_ddlSites_SelectedIndexChanged); //error says, masterpage does not contain a reference for contentCallEvent}
Что я уже пробовал:
Я попытался найти страницу содержимого,
ContentPlaceHolder contentPage = Page.Master.FindControl("pnlCollectionsDue") as ContentPlaceHolder; contentPage.Page.Master += new EventHandler("ddlSites_SelectedIndexChanged");
я попытался найти выпадающий список
DropDownList ddl = this.Page.Master.FindControl("ddlSites") as DropDownList; ddl.SelectedIndexChanged += new EventHandler(Master_ddlSites_SelectedIndexChanged);