뷰의 datacontext를 viewmodel에 설정하는 여러 가지 방법을 생각하려고합니다. 나는이 순간에 oggling있어Resource의 DataTemplate은 ViewModel을 View로 설정하지만 그 다음은
하나는 이런 식입니다 :
내 MainWindowResource 있습니다
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vw="clr-namespace:DemoStuffPartII.View"
xmlns:vm="clr-namespace:DemoStuffPartII.ViewModel">
<DataTemplate DataType="{x:Type vm:PersonViewModel}">
<vw:PersonView />
</DataTemplate>
을하지만 좌초 곳이 바로도이다. 보기에서 ContentControl을 사용해야한다는 것을 알고 있습니다. 그러나 그것을 구성하는 가장 좋은 방법은 무엇입니까? 이 일에 어떻게 가야합니까?
Content = "{Binding CurrentPage}"라고하면, CurrentPage는 현재의 경우 PersonViewModel입니다. 비록 데이터 템플릿에 이미 지정되어있는 경우 ViewModel의 이름을 다시 지정해야할까요? 왜 안가 Content = "{Binding}"? –
DataTemplate에 지정된 값이 "catching"입니다. 이것은 "목표"입니다. Binding에서 지정하는 것은 "소스"입니다. 그러나 나는 처음부터 시작하는 대신에 여기에서 2 단계를보고 있다고 느낍니다. MVVM을 사용하기 위해서는 처음에는 간단하게 유지해야합니다. this.DataContext = new SomeViewModel(); –
그래, 아마도 잘못된 순서로 몇 가지 일을하는 경우가 있는데, 때로는 어디에서 시작하는지 모호합니다. anser와 ViewModelLocator 패턴의 팁을 가져 주셔서 감사합니다! –