C# 从父视图模型绑定

C# 从父视图模型绑定,c#,wpf,mvvm,binding,C#,Wpf,Mvvm,Binding,我有一个视图,其中有一个列表框。我将listbox绑定到ListBoxViewModel的集合,它是MainViewModel的一个属性。然后,我为listbox创建了一个dataTemplate,其中im绑定到ListBoxViewModel的属性。包含列表框的视图将datacontext设置为mainVeiwModel。如何将其ItemSource绑定到ListBoxVIewModels集合的listbox的dataTemplate中的MainViewModel属性绑定到该属性 此组合框位于

我有一个视图,其中有一个
列表框
。我将
listbox
绑定到ListBoxViewModel的集合,它是MainViewModel的一个属性。然后,我为
listbox
创建了一个
dataTemplate
,其中im绑定到ListBoxViewModel的属性。包含列表框的视图将datacontext设置为mainVeiwModel。如何将其
ItemSource
绑定到ListBoxVIewModels集合的
listbox
dataTemplate
中的MainViewModel属性绑定到该属性

组合框
位于
列表框
数据模板
中,其
项源代码
绑定到ListBoxViewModels集合。请注意,我正在尝试绑定到数据模板中的MainViewModel属性以及ListBoxViewModel属性

      <ListBox ItemSource="{Binding Path=CollectionOfListBoxViewModelsInMainViewModel}"
           <DataTemplate>
               .....
                <ComboBox Margin="6"
                          Width="300"
                          IsEditable="True"
                          ItemsSource="{Binding Path=MainViewModelProperty}" //binding not working
                          SelectedItem="{Binding ListBoxViewModelProperty}"  //binding works
                          Text="{Binding ListBoxViewModelProperty, UpdateSourceTrigger=LostFocus}"/>   //binding works
                .....
          </DataTemplate>
       </ListBox>
最简单的方法:

<YOURWINDOW x:Name="MyWindow">
 <ListBox ItemSource="{Binding Path=CollectionOfListBoxViewModelsInMainViewModel}"
           <DataTemplate>
               .....
                <ComboBox Margin="6"
                          Width="300"
                          IsEditable="True"
                          ItemsSource="{Binding ElementName=MyWindow, Path=DataContext.MainViewModelProperty}"
                          SelectedItem="{Binding ListBoxViewModelProperty}"  //binding works
                          Text="{Binding ListBoxViewModelProperty, UpdateSourceTrigger=LostFocus}"/>   //binding works
                .....
          </DataTemplate>
       </ListBox>
</YOURWINDOW>


太好了,我想是这样的,我只需要给控件起个名字。谢谢