Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 如何绑定到Tabcontrol.Items_Wpf_Xaml_Data Binding - Fatal编程技术网

Wpf 如何绑定到Tabcontrol.Items

Wpf 如何绑定到Tabcontrol.Items,wpf,xaml,data-binding,Wpf,Xaml,Data Binding,我有一个WPF应用程序,我正在尝试将项动态添加到tabcontrol。我有一个菜单项列表,应该与tabcontrol的项进行数据绑定。唯一的问题是TabControl.Items不会通知其他人已添加项。我通过绑定到TabControl.Items.Count并获取对转换器的调用来测试这一点(但是传入的值是Count而不是有用的值)。以下是无法正确绑定数据的相关代码,因为项目不调用更新: <MenuItem ItemsSource="{Binding RelativeSource={Rela

我有一个WPF应用程序,我正在尝试将项动态添加到tabcontrol。我有一个菜单项列表,应该与tabcontrol的项进行数据绑定。唯一的问题是TabControl.Items不会通知其他人已添加项。我通过绑定到TabControl.Items.Count并获取对转换器的调用来测试这一点(但是传入的值是Count而不是有用的值)。以下是无法正确绑定数据的相关代码,因为项目不调用更新:

<MenuItem ItemsSource="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TabControl}}, Path=Items, Converter={StaticResource TabControlItemConverter}}">

所有这些都很好…添加视图,选项卡控件添加项目,然后显示视图。但是tabcontrol上的Items属性从不向其集合广播更改

对于
选项卡控件
也要做同样的事情,绑定
项源
,唯一需要考虑的是,如果要在添加项时更新源集合,则应实现源集合。已经实现了接口,并且经常用作此类绑定的源

<TabControl cal:RegionManager.RegionName="{x:Static local:LocalRegionNames.SelectedItemRegion}" >
            <TabControl.Resources>
                <Style TargetType="TabItem" BasedOn="{StaticResource TabItemStyle}">
                    <Setter Property="HeaderTemplate">
                        <Setter.Value>
                            <DataTemplate>
                                <StackPanel Orientation="Horizontal">
                                    <Image Style="{StaticResource tabItemImage}" Height="20" />
                                    <TextBlock Text="{Binding Content.DataContext.TabHeader, RelativeSource={RelativeSource AncestorType=TabItem}}" VerticalAlignment="Center" />
                                </StackPanel>
                            </DataTemplate>
                        </Setter.Value>
                    </Setter>
                </Style>
            </TabControl.Resources>
        </TabControl>
ProjectDetailView view = new ProjectDetailView();
ProjectDetailViewModel viewModel = new ProjectDetailViewModel();
viewModel.CurrentProject = project;
view.DataContext = viewModel;



 IRegionManager retManager = RegionManager.Regions[LocalRegionNames.SelectedItemRegion].Add(view, null, true);
   RegionManager.Regions[LocalRegionNames.SelectedItemRegion].Activate(view);