WPF Dynamic TabItems - PullRequest
       4

WPF Dynamic TabItems

0 голосов
/ 07 апреля 2011

У меня есть TabControl с динамически создаваемыми вкладками и содержимым, которые меняются в зависимости от переданного XML, но мне также нужно создать пару TabItems независимо от содержимого XML. Когда я добавляю <TabItem Header="Users"/>, я получаю, что коллекция элементов должна быть пустой перед использованием ItemsSource. Вот что у меня сейчас:

<TabControl ItemsSource="{Binding Content}">

                <TabControl.ItemTemplate>
                    <DataTemplate>
                        <TextBlock Text="Header"/>
                    </DataTemplate>
                </TabControl.ItemTemplate>

                <TabControl.ContentTemplate>
                    <DataTemplate>
                        <TextBlock Text="Tab Content"/>
                    </DataTemplate>
                </TabControl.ContentTemplate>                   
            </TabControl>

Есть ли что-нибудь, чтобы сделать это? Спасибо!

Ответы [ 2 ]

3 голосов
/ 07 апреля 2011

Как указывается в ошибке, вы должны выбрать между привязкой данных ItemsSource или установкой свойства Items - вы не можете делать и то, и другое. Вы можете использовать CompositeCollection для объединения содержимого динамических вкладок с другой коллекцией, содержащей нединамические вкладки. Затем вы можете связать ItemsSource с этим CompositeCollection.

1 голос
/ 07 апреля 2011

Вы можете использовать CompositeCollection для достижения желаемой функциональности.Это может быть полезно (хотя здесь говорилось о TreeView) - Привязка к одному элементу внутри CompositeCollection

...