2009-12-09 4 views
0

속성을보기에 바인딩 할 때 사용자 및 객체 상태에 대한 속성 가시성 및 편집 가능성을 어떻게 처리합니까? 나는 poco의 속성에 대해 허가 된 속성을 사용하는 몇 가지 예를 보았습니다. 그러나 이것은 유연하지 않습니다.필드/속성 수준 보안을 어떻게 처리합니까?

내가보기에 가장 좋은 점은 뷰가 참조 할 수있는 사전에이 디스플레이 정보를 저장하는 것이 었습니다. 밖에 더 좋은 솔루션이 있습니까?

답변

0

WPF에는 훨씬 더 많은 유연성을 제공하는 몇 가지 옵션이 있습니다. 속성 또는 속성 그룹의 현재 가시성/편집 가능성에 해당하는 ViewModel의 속성을 쉽게 가질 수 있으며 데이터 바인딩을 사용하여 개별 속성에 바인딩 된 컨트롤의 해당 visisbility/editability 상태를 설정할 수 있습니다.

이 단계를 더 진행하고 시나리오의 각 "역할"에 대해 별도의보기를 구현할 수도 있습니다. 이는 사용자의 비즈니스 역할에 따라 화면의 UI를 완전히 사용자 정의 할 수 있으므로 가장 강력한 방법입니다. UI의 보이지 않는 부분을 갖는 대신 다른보기를 배치하여 다른 UI를 바꿀 수 있습니다. 동일한 비즈니스 로직을 애플리케이션의 ViewModel 및 Model 레이어에 임베드 할 수 있습니다. 즉, 적절한 뷰를 연결해야합니다.

+0

소리가 재미 있지만 사용자가 이러한 설정을 선택하게됩니다. –

+0

이렇게하면 더욱 유연 해집니다. 동일한 문제가 적용되거나 구성 기반 또는 정책 기반으로 적용됩니다. WPF를 사용하면이 시나리오를 훨씬 쉽게 처리 할 수 ​​있습니다. –

관련 문제