ASP.NET MVC2 Master Page PlaceHolder видимость - PullRequest
1 голос
/ 01 сентября 2011

asp: PlaceHolders имеет свойство visible, и это определяет, будет ли их содержимое отображаться на странице.

Я объявил PlaceHolder на главной странице MVC2 и установил для видимости значение false.

Подскажите, пожалуйста, как я могу контролировать видимость PlaceHolder из шаблона представления MVC2, который наследуется от главной страницы MVC2?

Это кажется простой задачей, но я изо всех сил пытаюсь понять, как ее можно достичь. Я думаю, что я должен иметь возможность получить доступ к PlaceHolder из шаблона с нисходящим представлением (как с кодом веб-форм) и просто установить его видимость там, но способ сделать это ускользает от меня ...

1 Ответ

3 голосов
/ 01 сентября 2011

Не делай этого. Заполнители являются наследием от классических веб-форм. Манипулировать серверными элементами управления в приложении ASP.NET MVC очень плохо, и вы никогда не должны этого делать. Так что просто забудьте о настройке свойств для пользовательских элементов управления. К счастью, в Razor заполнители были полностью удалены и заменены разделами. Поэтому не пишите код, который вы не сможете перенести позже.

Один из способов показать / скрыть разделы вашего кода в приложении ASP.NET MVC - это использовать оператор if в ваших представлениях. Например:

<% if (Model.ShouldShowSection) { %>
    <div>Some super section</div>
<% } %>

В этом примере мы тестируем логическое значение для модели представления, которое будет установлено действием контроллера, которое отображало это представление.

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