Whirlwind
Whirlwind

Reputation: 13665

Buttons sometimes doesn't get disabled on windows form

I have a windows form application, and I have UserControl that has some groupboxes and some buttons that should be enabled or disabled based on the user role, like this:

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

This is placed in _Load event. Now sometimes when I switch between pages, these buttons doesn't look disabled. But when I try to touch them, then become disabled. Seems like the UI somehow is not correctly drawn. How to fix this? What may be the cause of this?

Upvotes: 2

Views: 341

Answers (2)

krobelusmeetsyndra
krobelusmeetsyndra

Reputation: 181

It might be wrong, but according to this, _Load event happens only once, when the Form is first called. Maybe putting that code of yours into _Activated event will do the trick?

EDIT

I got confused as to what the answer was, but the principle is the same: _Load event only occurs once, when it is called for the first time. So, if you need to have something updated whenever you switch between them, put your code into _VisibleChanged event.

Upvotes: 1

Emre BAYRAM
Emre BAYRAM

Reputation: 36

I don't understand clearly but try this

this.Refresh();

Upvotes: 0

Related Questions