Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
283 views
in Technique[技术] by (71.8m points)

wpf - Giving nested panels as argument to ItemsPanelTemplate

The following is an excerpt from my MainWindow.xaml. My question is about the part, where ItemsPanel is set via an ItemsPanelTemplate

<TabControl Grid.Row="2" dd:SmallDragDropHelper.IsDragDropEnhanced="true"
            ItemsSource="{Binding Path=TabCollection}" SelectedIndex="{Binding AktIndex, Mode=TwoWay}" TabStripPlacement="Top">
    <TabControl.ItemTemplate>
        <StaticResource ResourceKey="titemplate"/>
    </TabControl.ItemTemplate>
    <TabControl.ContentTemplate>
        <StaticResource ResourceKey="tctemplate"/>
    </TabControl.ContentTemplate>
    <TabControl.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel IsItemsHost="true"></WrapPanel>
        </ItemsPanelTemplate>
    </TabControl.ItemsPanel>
</TabControl>

I understand that it is simple and working to write a single panel type as argument/content of the tag <ItemsPanelTemplate>. But what I need/wish is to be able to write the following

        <ItemsPanelTemplate>
            <DockPanel>
            <WrapPanel DockPanel.Dock="Left" IsItemsHost="true"></WrapPanel>
            <Button DockPanel.Dock="Right">Add</Button>
            </DockPanel>
         </ItemsPanelTemplate>

The intention is, that the tabitem headers should be given to the wrap panel which is placed left in the DockPanel and a button should be shown in the same line flush right.

But it seems, it is impossible to give such a nested construction of panels as argument to ItemsPanelTemplate (at least it is not working as intended for me).

What is the right way to proceed here? (Googling gave me only examples with a single panel as argument to ItemsPanelTemplate). (I would prefer a solution using no C# code, only .xaml)

question from:https://stackoverflow.com/questions/65902658/giving-nested-panels-as-argument-to-itemspaneltemplate

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

2.1m questions

2.1m answers

60 comments

57.0k users

...