Я использую объекты .NET IIdentity и IPrincipal для безопасности на основе ролей, и я нахожусь на этапе изменения элементов управления, отображаемых на основе ролей, которые есть у текущего пользователя.
Мой вопрос заключается в том, какой метод рекомендуется использовать для включения / выключения полей в окне WPF - показ / скрытие полей в зависимости от вызовов типа IIdentity.IsInRole.
Может ли это быть сделано в XAML, или мне нужно абстрагировать это в код с тем, что, я думаю, немного запутано в коде позади;
this.txtUserName.IsReadOnly = !MyPrincipal.CurrentPrincipal.IsInRole("Administrator");
this.mnuCreateUser.Visibility = MyPrincipal.CurrentPrincipal.IsInRole("Administrator");
? Visibility.Hidden : Visibility.Visible;
(Примечание; мой код проверяет роли при выполнении функций, я хочу изменить GUI в зависимости от ролей, чтобы пользователи не видели / не видели элементы только для чтения, к которым у них нет доступа)