Могу ли я сделать элементы управления, определенные в моей разметке, общедоступными вместо защищенных - PullRequest
2 голосов
/ 14 апреля 2010

Допустим, у меня есть веб-сайт с главной страницей и страницей aspx.

На моей странице ASPX я указываю на свою мастер-страницу с тегом MasterType.

<%@ MasterType VirtualPath="~/mymasterpage.master" %>

Скажем, я определил метку в разметке моей главной страницы.

Если вы посмотрите на код дизайнера, эта метка должна выглядеть примерно так.

protected global::System.Web.UI.WebControls.Label label1;

Теперь на моей информационной странице я бы хотел сослаться на этот ярлык. Если я введу этот «Master.label1», компилятор будет жаловаться на то, что элемент управления недоступен из-за уровня защиты »и это правильно, так как label1 автоматически определяется как« защищенный ».

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

заранее спасибо.

1 Ответ

2 голосов
/ 14 апреля 2010

Вы можете сделать их общедоступными вручную, изменив код конструктора, но, вообще говоря, это неправильный дизайн. Они защищены по определенной причине: любой класс, который «знает» о вашей странице, элементе управления или мастер-классе и взаимодействует с ним, должен взаимодействовать со специализированными свойствами и событиями, которые предоставляет класс, а не с самими элементами управления.

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