2015-02-10 2 views
0

У меня есть существующее представление asp.net, и информация может быть отредактирована несколькими различными ролями. Новое поле бит введено (флажок), и страница работает правильно.DetailsView условно разрешить поле для редактирования

Следующий шаг - ограничить редактирование этого поля только одной ролью. Как установить элементы управления редактирования как отключенные?

Методы пытались позади

  • код - в случае изменения режима в DetailsView, в органы управления редактирования не было оказано, поэтому не может быть еще
  • отключена в коде страницы - Это работает и позволяет отключив управление. Эта проблема заключается в том, что поле не сохраняет обновление. Я подозреваю, что это проблема с кодом в шаблоне. Код я использую:
<EditItemTemplate> 
    <% If User.IsInRole("SystemAdministrator") Then%> 
    <asp:CheckBox ID="BypassIpLockdownCheckBox" runat="server" Checked='<%# Bind("ByPassIPLockdown") %>' /> 
    <% Else%> 
    <asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("ByPassIPLockdown") %>' Enabled="false" /> 
    <% End If%> 
</EditItemTemplate> 

Как можно условно включить/выключить поле?

ответ

0

Попробуйте

<asp:CheckBox ID="BypassIpLockdownCheckBox" runat="server" Checked='<%# Bind("ByPassIPLockdown") %>' Enabled='<%# User.IsInRole("SystemAdministrator") %>' /> 
+0

Это не будет компилироваться. Получение сообщения «Теги сервера не могут содержать <%,,,%> конструкций». – KevinManx

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