2011-03-01 2 views
0

필자는 프리즘 4 데모 앱을 제작하여 뷰 전환에 중점을 둔 새로운 프레임 워크를 배우고 있습니다. 이 앱에는 여러 개의 영역이 있으며, 그 중 하나는 현재 활성 모듈에서 하나 이상의 버튼을 보유하고있는 ItemsControl입니다.프리즘 4 : ItemsControl에서 항목을 숨기는 방법?

각 모듈의 Initilize() 메소드에서 버튼을 지역 관리자에 등록합니다. 다음은 첫 번째 모듈의 등록 코드입니다.

RegionManager.RegisterViewWithRegion("ButtonRegion", typeof(ModuleAButton1)); 
RegionManager.RegisterViewWithRegion("ButtonRegion", typeof(ModuleAButton2)); 

두 번째 모듈은 동일한 방식으로 버튼을 등록합니다. 두 모듈을 전환하려면 RequestNavigate()을 사용합니다.

여기 내 문제가 있습니다 : 두 모듈의 버튼은 활성 모듈의 버튼 대신 ItemsControl에 표시됩니다. ItemsControlContentControl으로 바꾸고 버튼을 StackPanel에 넣는 것을 고려했습니다. 그러나 여기서는 당신을 지루하게하지 않을 것이며, 저에게는 효과가 없습니다. 내가해야 할 것은 다음 중 하나 모듈이 활성화 될 때

  • 로드 모듈이 작동 버튼, 그리고 다른 모듈로 전환 할 때 언로드, 또는

  • 이 버튼을 표시, 다른 모듈로 전환하면 숨길 수 있습니다.

프리즘 4에서 어떻게합니까? 당신의 도움을 주셔서 감사합니다.

답변

2

내 대답을 찾았습니다. 보기 또는 해당보기 모델에 IRegionMemberLifetime 인터페이스를 구현하십시오. 인터페이스는 단일 읽기 전용 부울 속성 인 KeepAlive으로 구성됩니다. 속성이 true으로 설정된 경우 사용자가 멀리 이동 한 후에보기가 활성 상태로 유지됩니다. 속성이 false으로 설정된 경우보기가 언로드됩니다. "Microsoft 프리즘 개발자 가이드"(Ver 4), p. 121.

관련 문제