Кнопки иногда не отключаются на форме окон - PullRequest
0 голосов
/ 26 декабря 2018

У меня есть приложение формы Windows, и у меня есть UserControl, который имеет несколько групповых блоков и некоторые кнопки, которые должны быть включены или отключены в зависимости от роли пользователя, например:

this.btnEditArchive.Enabled = (ActiveUser.Instance.role == DConstants.kAdmin || ActiveUser.Instance.role == DConstants.kSuperAdmin);

Это помещено в _Loadсобытие.Теперь иногда, когда я переключаюсь между страницами, эти кнопки не выглядят отключенными.Но когда я пытаюсь прикоснуться к ним, то становлюсь инвалидом.Похоже, пользовательский интерфейс как-то не правильно нарисован.Как это исправить?Что может быть причиной этого?

Ответы [ 2 ]

0 голосов
/ 26 декабря 2018

Это может быть неправильно, но согласно это , _Load событие происходит только один раз, когда форма вызывается впервые.Может быть, помещение вашего кода в _Activated событие поможет?

РЕДАКТИРОВАТЬ

Я запутался в том, каким был ответ, но принцип в том, чтото же самое: _Load событие происходит только один раз, когда оно вызывается впервые.Поэтому, если вам нужно что-то обновлять при каждом переключении между ними, поместите свой код в событие _VisibleChanged.

0 голосов
/ 26 декабря 2018

Я не понимаю, ясно, но попробуйте это

this.Refresh();
...