외부 프레임워크가 없는 WPF MVVM 보기 탐색
MVVM 패턴을 사용하여 여러 뷰를 관리하는 WPF 애플리케이션에서는 뷰 간 탐색이 중요합니다. 이 문서에서는 특히 보기 1에서 탐색한 후 보기 2가 동일한 창에 로드되는 경우 한 보기에서 다른 보기로 전환하는 문제를 설명합니다.
MVVM Light 또는 기타 프레임워크를 사용하는 참조 링크와 달리 여기에는 외부 종속성이 필요하지 않은 단순화된 접근 방식이 있습니다. 이 메서드는 데이터 템플릿을 활용하여 뷰를 뷰 모델과 연결하고 ContentControl을 사용하여 선택한 뷰를 표시합니다.
데이터 템플릿 및 ViewModel 바인딩
App.xaml과 같은 리소스에서 뷰 모델을 해당 뷰에 매핑하는 데이터 템플릿을 정의합니다.
<code class="language-xml"><DataTemplate DataType="{x:Type ViewModels:MainViewModel}"><MainView /></DataTemplate> ...</code>
기본 ViewModel에서 보기 전환
MainViewModel에서 다른 뷰 모델로 설정할 수 있는 ViewModel 속성을 생성합니다.
<code class="language-csharp">public BaseViewModel ViewModel { get; set; }</code>
다른 보기로 전환하려면 해당 보기 모델을 이 속성에 할당하면 됩니다.
<code class="language-csharp">ViewModel = new PersonViewModel();</code>
하위 뷰에서 뷰 탐색
하위 뷰에서 탐색하려면 MainViewModel에서 명령을 선언하세요.
<code class="language-csharp">public ICommand DisplayPersonView { get { return new RelayCommand(action => { ViewModel = new PersonViewModel(); }, canExecute => { ... }); } }</code>
하위 뷰 XAML에서 버튼의 Command 속성을 다음 ICommand에 바인딩합니다.
<code class="language-xml"><Button Command="{Binding DisplayPersonView}" /></code>
이러한 단계를 수행하면 WPF MVVM 애플리케이션에서 뷰를 효율적으로 탐색하여 원활한 사용자 경험을 보장할 수 있습니다.
위 내용은 외부 프레임워크 없이 WPF MVVM에서 뷰 간을 이동하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!