저는 WPF를 처음 접했고 다음 시나리오를 가지고 있습니다.런타임에 컨트롤을 대체하는 가장 좋은 방법은 무엇입니까?
다른 응용 프로그램 상태가 다른 시간에 다른 컨트롤 집합을 표시해야하는 영역이있는 응용 프로그램이 있습니다.
WPF의 접근 방식이 궁금합니다.
winforms에서 컨트롤을 런타임에 보이게하거나 보이지 않게 할 것입니다. 컨트롤이 너무 많으면 Panel/UserControls에 그룹화하고 표시하거나 숨 깁니다.
내 직감은 WPF에서 더 좋은 방법이 있다고 말합니다.
다른 모델을 사용하고 영역을 변경하는 데 다른 논리가있는 경우 데이터 형식이 유용할까요? – Kugel
확실히. 바인딩 소스에 사용되는 클래스를 전환하면 훨씬 유용하게 사용할 수 있습니다. 예를 들어 두 개의 UI 상태를 구동하는 두 개의 서로 다른 ViewModel 클래스가있는 경우 두 개의 DataTemplates를 Resources로 정의 할 수 있습니다. DataTypes 및 x : Key가 없습니다. 그런 다음 ViewModel 객체 중 하나를 ContentControl의 Content 속성에 할당하면 올바른 템플릿이 자동으로 선택됩니다. –