c# – 如何在WPF中为分隔符添加标题?
发布时间:2020-12-15 04:16:44 所属栏目:百科 来源:网络整理
导读:我想在 WPF分隔符中添加一个标题(这样它看起来像是GroupBox的顶行).这样做的目的是将视图分成不同的部分,我不能使用GroupBox,因为我们的业务准则说我们必须使用分隔符……有人知道如何做到这一点吗? 编辑: 我知道可以通过使用其他控件(即边框和文本框)来实
我想在
WPF分隔符中添加一个标题(这样它看起来像是GroupBox的顶行).这样做的目的是将视图分成不同的部分,我不能使用GroupBox,因为我们的业务准则说我们必须使用分隔符……有人知道如何做到这一点吗?
编辑: 我知道可以通过使用其他控件(即边框和文本框)来实现此解决方案,但我想知道是否可以将Header属性添加到Separator对象. 解决方法
您可以编写自己的自定义控件
public class HeaderedSeparator : Control { public static DependencyProperty HeaderProperty = DependencyProperty.Register( "Header",typeof(string),typeof(HeaderedSeparator)); public string Header { get { return (string)GetValue(HeaderProperty); } set { SetValue(HeaderProperty,value); } } } 和风格: <Style TargetType="{x:Type local:HeaderedSeparator}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type local:HeaderedSeparator}"> <Grid Height="{TemplateBinding Height}"> <Grid.ColumnDefinitions> <ColumnDefinition Width="15"/> <ColumnDefinition Width="Auto"/> <ColumnDefinition /> </Grid.ColumnDefinitions> <Separator Grid.Column="0"/> <TextBlock Grid.Column="1" VerticalAlignment="Center" Margin="5 0" Text="{TemplateBinding Header}"/> <Separator Grid.Column="2" /> </Grid> </ControlTemplate> </Setter.Value> </Setter> </Style> 然后使用它: <local:HeaderedSeparator Header="Header1"/> <local:HeaderedSeparator Header="Header2"/> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读