Window에 ObservableCollection의 "Layouts"및 "SelectedLocation"DependencyProperty가 있습니다. SelectedLocation에는 "이름"등과 같은 필드를 포함하는 객체 인 "Layout"이라는 속성이 있습니다. 나는 SelectedLayout에 콤보 상자를 바인딩하려고하는데 작동하지 않습니다. 다음은 작동하지 않습니다. 대신 SelectedItem에 대한 바인딩을 시도해 보았습니다. 나는이에서 INotifyPropertyChanged를 구현 않지만 내가합니다 (SelectedLocation하는 DependencyProperty의 하위 속성에 바인딩하고있어 사실과 함께 할 수있는 뭔가가있을 수 있습니다 생각합니다. 그러나 WPF : Nested DependencyProperties
<ComboBox Grid.Row="2" Grid.Column="0" x:Name="cboLayout" ItemsSource="{Binding Layouts,ElementName=root}" SelectedValue="{Binding SelectedLocation.Layout.LayoutID,ElementName=root}" DisplayMemberPath="{Binding Name}" SelectedValuePath="LayoutID" />
, 또한 "SelectedLocation"에 바인딩 다음 작품 (DP :?.
IEnumerable<Layout>
그러나 당신이 당신을 콤보 상자
Layout
객체를 포함 할 때, 상황을 가지고 그래서
Layout.LayoutID
에 선택된 값을 결합하고, :. 부동산
Layouts
가이 유형 나는이 같은 것을 가정 무엇
<TextBox Grid.Row="4" Grid.Column="1" x:Name="txtName" Text="{Binding SelectedLocation.Name,ElementName=root,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" />
1) 게시물 제목에 태그를 넣지 마십시오. 2) 구속력있는 오류를 찾으십시오. 아마 당신은 무슨 일이 일어나고 있는지에 대한 단서를 제공 할 것입니다. Visual Studio의 디버그 출력 창에서 찾을 수 있습니다. 또 다른 해결책은 우수한 Snoop을 사용하여 응용 프로그램의 시각적 트리를 두드려 바인딩 오류를 찾는 것입니다. –