gpt4 book ai didi

c# - 如何显示 HeaderedItemsControl 的 Header?

转载 作者:太空狗 更新时间:2023-10-29 23:02:25 24 4
gpt4 key购买 nike

我有以下代码:

 <Window.Resources>      
<DataTemplate x:Key="SectionTemplate" >
<TextBlock Text="{Binding Path=Name}" />
</DataTemplate>
</Window.Resources>
<Grid >
<Border>
<HeaderedItemsControl Header="Top1"
ItemsSource="{Binding Path=List1}"
ItemTemplate="{StaticResource SectionTemplate}"/>
</Border>
</Grid>
public class MainWindow
{
public List<Item> List1
{
get { return list1; }
set { list1 = value; }
}

public MainWindow()
{
list1.Add(new Item { Name = "abc" });
list1.Add(new Item { Name = "xxx" });

this.DataContext = this;
InitializeComponent();
}
}

public class Item
{
public string Name { get; set; }
}

出于某种原因,呈现了 Items,但没有 header 。

最佳答案

作为the documentation指出:

A HeaderedItemsControl has a limited default style. To create a HeaderedItemsControl with a custom appearance, create a new ControlTemplate.

因此,当您创建该模板时,请确保包含一些 ContentPresenter绑定(bind)到 Header(例如使用 ContentSource )

例如

<HeaderedItemsControl.Template>
<ControlTemplate TargetType="{x:Type HeaderedItemsControl}">
<Border>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<ContentPresenter ContentSource="Header" />
<Separator Grid.Row="1" />
<ItemsPresenter Grid.Row="2" />
</Grid>
</Border>
</ControlTemplate>
</HeaderedItemsControl.Template>

(省略了所有默认绑定(bind)(边距、背景等)。)

关于c# - 如何显示 HeaderedItemsControl 的 Header?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7221005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com