Проверка работоспособности: зависимости Master Page, Content Page и ASCX - PullRequest
0 голосов
/ 19 июля 2011

Я бы хотел, чтобы кто-то бросил взгляд на то, что мы делаем, и сказал мне, будем ли мы делать это странным образом.

Что у меня есть:

  • У нас есть .master (главная страница), .aspx (страница содержимого) и .ascx (пользовательский элемент управления).
  • элемент управления пользователя должен отображаться на всех страницах, поэтому мыразместили его на главной странице
  • Пользовательский элемент управления должен инициализироваться по-разному в зависимости от страницы содержимого, на которой он отображается.Таким образом, страница содержимого может инициировать событие в пользовательском элементе управления, передавая некоторые аргументы, которые инициализируют элемент управления.

Вопросы:

На мой взгляд, это устраняет любую зависимость между пользовательским элементом управления и страницей контента или главной страницей.Я прав?

Является ли вызов события в пользовательском элементе управления самым простым способом передачи аргументов и соответствующей инициализации элемента управления?

Рад прояснить любые дальнейшие вопросы, спасибо.

1 Ответ

1 голос
/ 19 июля 2011

Я бы сказал, что все в порядке, но я хотел бы получить разъяснение: как пользовательский элемент управления подписывается на событие страницы содержимого?

В качестве альтернативы, вы также можете рассмотреть возможность создания интерфейса для мастера.страница:

public interface IMyMaster
{
  UserControlType Control { get; }
}

После применения этого интерфейса к ведущему, интерфейс может возвращать прямую ссылку на элемент управления.Страница содержания может затем:

if (this.Page.Master is IMyMaster) {
   ((IMyMaster)this.Page.Master).Control.Initialize();
}

HTH.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...