Подарки от программис'тов
Ещё у их программиста зачем-то заведено перечисление со взаимоисключающими вариантами
Enabled,
Disabled, - аналогичен HTML attribute "disabled" и применяется в их программе, если нет прав доступа
Hidden, - прямо мапится на CSS visibility
Collapsed - прямо мапится на CSS visibility
Нафига делать три варианта недоступности компонента? Не проще тогда уж рисовать и не рисовать его? Т.е. если имеешь права доступа - рисуем, не имеешь - не рисуем. Зачем юзеру знать, что вот есть ещё контролы, которые ему недоступны, т.к. прав нет? Disabled-контролы же рисуются, только недоступными. По мне, disabled-атрибут применяется не для разграничения прав, а если контрол недоступен в процессе редактирования - например, неправильно что-то ввёл в форму - кнопка подтверждения недоступна. А для прав - проще вообще этот контрол не рисовать. Но у человека какая-то своя логика.