0

我有一个 WPF 选项卡控件,其中包含几个重复的控件作为选项卡页内容

<TabControl ItemsSource="{Binding}" Name="tabControl">
    <TabControl.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Name}"/>
        </DataTemplate>
    </TabControl.ItemTemplate>
    <TabControl.ContentTemplate>
        <DataTemplate>
            <local:InnerDataEntryControl DataContext="{Binding Data}"/> 
        </DataTemplate>
    </TabControl.ContentTemplate>
</TabControl>

InnerDataEntry 控件上有一个列表框。我在外部表单上有一个命令,需要从控件的列表框中选择项目。我不知道如何访问选项卡控件本身的列表框。当我尝试查询所选项目时,我得到的是绑定项目而不是列表框本身。

我不想在我的列表项上使用“IsSelected”属性污染业务层,我想我可以在必要时创建一个视图模型,但我无法获得有关实际内容控制的信息似乎是错误的的一个标签页。

我希望我只是遗漏了一些明显的东西。

4

1 回答 1

0

这在我的 WPF 体验中早些时候被问到过。为了结束这个问题的循环,我将发布一个指向MSDN 杂志关于 MVVM 主题的条目的链接。

最终,解决方案涉及创建一个视图模型,该模型具有绑定到选项卡控件部分的必要属性,这样视图模型就不需要以我所描述的方式进行访问。相反,视图模型直接作用于绑定的数据,而无需直接引用视图。

于 2010-07-12T20:12:58.310 回答