2011-04-11 1 views
4

그냥 예입니다. CustomControl에는 "Test"라는 속성이있는 ViewModel이 있습니다.WPF 다른 요소의 ViewModel에 바인딩

텍스트 상자를 특정 속성에 바인딩 할 수 있습니까? 형제 ViewModel에 액세스 할 수 있습니까? xmlns:local="clr-namespace:ViewModel NameSpace"

+0

CustomControl 실제로있는 _depen ViewModel이라는 dency 속성 _이 필요합니까? –

+0

은 종속성 속성 일 필요는 없습니다. @Henk Holterman –

+0

아니요, DP를 추가하면 작동합니다. –

답변

3

형제 뷰 모델이 될 것이다 -

<TextBox Text="{Binding ElementName=myControl, Path=ViewModel.Test}"></TextBox> 
<Controls:CustomControl x:Name="myControl" /> 
+0

굉장, 도와 줘서 고마워, 내가 ViewModel을 비공개로하고 DP가없는 채로 할 수있게 해줬 어. –

+0

나는 이것을 처음부터 생각해야만했다. 건배 .. –

+0

이 방법은 같은 행에 ViewModels의 여러 인스턴스를 포함하지 않고 두 개의 서로 다른 ViewModels를 산재 시키게한다. – user2584621

0

이 당신이

<TextBox Text="{Binding Source={x:Static local:VieModel}, Path=Test}"></TextBox> 
<Controls:CustomControl x:Name="myControl" /> 

이 클래스의 ViewModel가 존재하는 네임 스페이스를 포함하는 태그 확장을 추가하는 것을 잊었다하지 마십시오 필요 - 무엇을 할 수 있음 해당 DataContext try

<TextBox Text="{Binding ElementName=myControl, Path=DataContext.Test}"></TextBox> 
<Controls:CustomControl x:Name="myControl" /> 
+0

당신은 저를 때려 눕 힙니다. 그냥 그걸 입력했다. 건배 – evanb