WPF绑定到子控件

WPF绑定到子控件,wpf,mvvm,binding,Wpf,Mvvm,Binding,我有一个包含嵌套ListView的TabControl。ListView绑定到父选项卡控件中的选定项。这在切换选项卡显示ListView中的子元素时非常有效。我不明白的是,如何从菜单用户控件外部绑定到ListView的SelectedItem i、 e ... 控制在这里。。。 我使用的是m-V-VM,所以我不想在理想情况下在代码中进行绑定-我确信这是可能的,只是想不通:)一般来说,如果需要更高级别的属性,可以将该属性移动到绑定到更高级别的ViewModel 因此,如果理解正确,我会将绑定到

我有一个包含嵌套ListView的TabControl。ListView绑定到父选项卡控件中的选定项。这在切换选项卡显示ListView中的子元素时非常有效。我不明白的是,如何从菜单用户控件外部绑定到ListView的SelectedItem

i、 e


... 控制在这里。。。

我使用的是m-V-VM,所以我不想在理想情况下在代码中进行绑定-我确信这是可能的,只是想不通:)

一般来说,如果需要更高级别的属性,可以将该属性移动到绑定到更高级别的ViewModel

因此,如果理解正确,我会将绑定到SelectedItem的ViewModel属性移动到TabControl的VM


这有意义吗?

通常,如果需要更高级别的属性,可以将该属性移动到绑定到更高级别的ViewModel

因此,如果理解正确,我会将绑定到SelectedItem的ViewModel属性移动到TabControl的VM


这有意义吗?

是的,我移动了TabControl,将其也更改为ListView,而不是嵌套子ListView,它现在与父控件处于同一级别,工作正常。现在只需要对样式进行排序:)是的,我已经移动了TabControl,并将其更改为ListView,而不是嵌套子ListView,它现在与父控件处于同一级别,工作正常。现在只需要整理一下样式:)
<TabControl x:Name="Parent">
    <TabControl.ContentTemplate>
        <DataTemplate>
            <ListView x:Name="Child" 
                      ItemsSource="{Binding Path=SelectedItem.Tabs, ElementName=Parent}"/>
        </DataTemplate>
    </TabControl.ContentTemplate>
</TabControl>

<ItemsControl ItemsSource="{Binding Path=SelectedItem.Controls, ElementName=Child}">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            ... controls go here ...
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>