1

我有一个 TabControl,它绑定到一个可观察的员工集合,就像这样

<TabControl ItemsSource="{Binding Employees}">
            <TabControl.ContentTemplate>
                <DataTemplate>
                    <views:EmployeeView/>
                </DataTemplate>
            </TabControl.ContentTemplate>
        </TabControl>

我已将我的 DataTemplate 设置为我的员工视图。假设我的员工集合中有两名员工。我得到了正确的标签出现。在我的 EmployeeView 中,我有一个复选框。如果我不绑定此复选框,则会在所有选项卡上进行检查。我不确定我是否在关注为什么会发生这种情况。我想我的问题是如何在 EmployeeView 上设置 DataContext 以便 tabcontrols 选项卡可以独立运行。

4

1 回答 1

1

问题可能是当它TabControl被数据绑定时,它“虚拟化”它的 TabItems,在选择更改时卸载然后重新加载和重新绑定它们的内容。

因此,您可以尝试IsChecked将 CheckBox 中的绑定View到其属性ViewModel,或者使用以下行为禁用TabItem虚拟化:http: //www.codeproject.com/Articles/460989/WPF-TabControl-Turning -Off-Tab-Virtualization

我最近自己使用了上述行为,因为我对 TabControl 的默认数据绑定行为有类似的问题。

于 2012-10-08T16:58:38.037 回答