Visual Studio 2010에서 C# 및 XAML을 사용하여 WPF 응용 프로그램을 만들고 있습니다.하나의 영역에 여러 개의 격자가 있음
나는 마스터 그리드가 있습니다. 마스터 그리드에는 다른 항목을 선택할 수있는 그룹 바가 있습니다. 선택한 항목에 따라 마스터 그리드의 중간이 완전히 다를 수 있습니다. 내가 궁금해 한 것은 중간 부분을 프로그래밍하는 가장 좋은 방법은 무엇입니까?
지금 당장 중간에있는 모든 내용이 C#에서 동적으로 프로그래밍되고 외부의 모든 내용이 XAML에서 프로그래밍되도록 설정했습니다.
C#에서는 프로그래밍 된 : 각 그룹 바 항목에 대해 다른 그리드가 표시 될 수 있도록 그리드가 있습니다. 각 그리드는 마스터 그리드의 하위입니다. 필요한 경우 각 표가 표시되거나 숨겨집니다. 이것을 접근하는 가장 좋은 방법입니까?
가장 좋은 예는 Outlook 2007의 그룹 바가 오른쪽에있는 경우입니다. 그룹 바 (메일, 캘린더, 작업)에서 다른 항목을 선택하면 그룹 바의 권한이 완전히 변경됩니다.
SelectedCollection은 ICollection입니까? – Berryl
그럴 수도 있지만 Object로 선언하고 "CurrentView"또는 그와 비슷한 것으로 이름을 바꿀 수도 있습니다. 이론적으로 그룹 바에 의해 선택 될 수있는 뷰를 생성 할 수 있고 "콜렉션"은 잘못된 명칭이 될 수 있습니다. 요점은 "중간"영역에 표시 할 모델 객체가 포함 된 뷰 모델의 속성을 가지고 있다는 것입니다. ContentPresenter의 임무는 적절한 DataTemplate을 자동으로 선택하여 표시하는 것입니다. Outlook 예제에서 "중간"의 모든 뷰는 컬렉션이므로 그 이름을 "SelectedCollection"으로 지정했습니다. –