C# 未使用HeaderedContentControl标题模板
我是WPF的新手,正在处理一些遗留代码,不知道如何使用HeaderedContentControl标头。我想把一个StackPanel和自定义的标题外观,只是不知道如何做到这一点 有人能给我一些下一步做什么的指导吗 我有这个xaml,HeaderTemplate从未使用过C# 未使用HeaderedContentControl标题模板,c#,wpf,xaml,C#,Wpf,Xaml,我是WPF的新手,正在处理一些遗留代码,不知道如何使用HeaderedContentControl标头。我想把一个StackPanel和自定义的标题外观,只是不知道如何做到这一点 有人能给我一些下一步做什么的指导吗 我有这个xaml,HeaderTemplate从未使用过 <UserControl x:Class="PEC.Admin.WindowsControls.Program.Views.ProgramProductEnrichmentColorsView" xml
<UserControl x:Class="PEC.Admin.WindowsControls.Program.Views.ProgramProductEnrichmentColorsView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:commonControls="clr-namespace:ManagerConsole.Common.Controls;assembly=ManagerConsole.Common.Controls"
xmlns:program="clr-namespace:PEC.Admin.ViewModel.Program;assembly=PEC.Admin.ViewModel.Program"
mc:Ignorable="d"
d:DesignWidth="300"
d:DataContext="{d:DesignInstance program:ProgramProductEnrichmentColorsViewModel}">
<commonControls:ExpanderPanel IsExpanded="{Binding Path=IsExpanded,Mode=TwoWay}">
<HeaderedContentControl.HeaderTemplate> <!-- this never gets used... -->
<DataTemplate>
<StackPanel>
<Label Content="{Binding Path=Header}"></Label>
</StackPanel>
</DataTemplate>
</HeaderedContentControl.HeaderTemplate>
<StackPanel HorizontalAlignment="Stretch"
VerticalAlignment="Top"
Width="Auto"
Margin="3"
Background="White">
<TextBlock Text="Source Type:"
Margin="0,5,0,0" />
<TextBox IsReadOnly="True"
IsTabStop="False"
Background="LightGray"
BorderThickness="0"
Text="{Binding Path=SourceTypeName, Mode=OneTime}" />
</StackPanel>
</commonControls:ExpanderPanel>
</UserControl>
已应用HeaderTemplate。要验证它,请在HeaderTemplate中为标签设置背景
但HeaderTemplate不显示任何内容,因为绑定不正确。模板应用于标题
属性中的数据集,该属性当前具有null
值
因此,如下面的示例所示更改代码(我尝试使用Expander,希望它能用于自定义CommonControl:ExpanderPanel):
谢谢你…我唯一的问题是我试图绑定的不仅仅是一个字符串
Header
实际上是一个具有两个属性的类型,这两个属性都是字符串。如何将标头(一个复杂的对象)绑定到模板。谢谢
<Expander IsExpanded="{Binding Path=IsExpanded, Mode=TwoWay}"
Header="{Binding ComplexObject}">
<HeaderedContentControl.HeaderTemplate>
<DataTemplate>
<StackPanel>
<Label Background="Green" Content="{Binding PropertyOfTheObject}"/>
</StackPanel>
</DataTemplate>
</HeaderedContentControl.HeaderTemplate>
</Expander>
<Expander.Header>
<TextBlock Text="Click to expand"/>
</Expander.Header>