2016-02-19 4 views
0

У меня есть следующие настройки на странице в ASPX:переменного доступа с главной страницы на ASCX странице

<%@ Page Title="" Language="C#" MasterPageFile="~/tt.master" AutoEventWireup="true" CodeFile="login.aspx.cs" Inherits="tt_login" %> 
<%@ MasterType VirtualPath="~/tt.master" %> 

и это на странице aspx.cs:

public partial class tt_login : System.Web.UI.Page 
{ 
    protected new ttUser User 
    { 
     get { return Master.User; } 
     set { Master.User = value; } 
    } 

В этом случае, тем ttUser имеет доступ к переменной с главной страницы.

Все в порядке.

Далее, у меня есть страница ASCX, со следующей установкой:

<%@ Control Language="C#" MasterPageFile="~/tt.master" AutoEventWireup="true" CodeFile="ttRightNav.ascx.cs" Inherits="Controls_ttRightNav" %> 
<%@ MasterType VirtualPath="~/tt.master" %> 

и на той же странице:

protected new ###.##.ttUser User 
{ 
    get { return Master.User; } 
    set { Master.User = value; } 
} 

Только на этот раз он говорит the name master does not exist in the current context

А насколько Я вижу, что настройка точно такая же - я не понимаю, почему она не работает.

Пара мыслей:

страница ASCX не в корневой папке - но так как он использует ~ он ссылается на корень, так что это не имеет значения?

Это потому, что это страница с ascx?

Пропустил ли я что-нибудь?

Я пробовал ссылаться на главную переменную с страницы ascx.cs, но все равно имею ту же проблему.

В принципе, как я могу ссылаться на переменную с главной страницы на странице ascx?

Я видел несколько вопросов о кастинге с главной страницы, но до сих пор не смог заставить ее работать.

Любая помощь будет принята с благодарностью - я полностью застрял !!!

EDIT:

Это не является дубликатом вопроса, упомянутого выше - вопрос выше про контроль - Я пытаюсь получить доступ к объекту

+0

Возможный дубликат [Доступ управления основной страницы ASCX файла] (http://stackoverflow.com/questions/10315967/accessing-master-page-control-in-ascx- файл) –

+0

@RB Вопрос, на который вы ссылаетесь, касается элемента управления на главной странице - я пытаюсь получить доступ к объекту - элемент управления поиска не будет работать для меня.Пожалуйста, прочитайте и поймите вопрос до голосования, чтобы закрыть. – Alex

ответ

2
  1. Сделать ttuser общественное
  2. Try литье вашей главной страницы в конкретный класс, а затем получить неровные поля

tt_login loginPage = Page as tt_login;

или

tt_login loginPage = Master as tt_login;

Смежные вопросы