Подтвердить что ты не робот

ASP.net получает доступ к главной переменной страницы через страницу содержимого

У меня есть главная страница:

<%@ Master Language="C#" AutoEventWireup="true" Codefile="AdminMaster.master.cs" Inherits="AlphaPackSite.MasterPages.AdminMaster" %>

Затем у меня есть общедоступная переменная:

public partial class AdminMaster : System.Web.UI.MasterPage
{
    protected bool blnShowDialogue = false;

На моей странице содержимого я хотел бы установить эту переменную:

blnShowDialogue = true;

Так что на моей главной странице я могу получить код:

    $(function() {
    <%if(blnShowDialogue == true){%>
        $("#dialog").dialog();
    <% } %>
    }
Это имеет смысл? Когда я пытаюсь использовать комбинации Master.blnShowDialogue или blnShowDialogue = и т.д., Ничего не работает.

Название "blnShowDialogue" не существуют в текущем контексте

4b9b3361

Ответ 2

Вам нужно отдать основную страницу фактическому типу.

((AdminMaster)Master).blnShowDialogue = "Foo";

В противном случае Мастер будет просто ссылаться на базовый класс Мастер - вы пытаетесь получить доступ к свойству в своем фактическом классе, который происходит из Мастер.

Ошибка, которую вы получаете, состоит в том, что свойство blnShowDialogue не существует в классе System.Web.UI.MasterPage - это имеет смысл, так как вы не сообщая, какой конкретный экземпляр MasterPage вы пытаетесь сослаться.

Надеюсь, что это поможет.