c#wpf样式化HierarchicalDataTemplate表示为键值对链接
我在WPF中将XML表示为树视图。节点使用HierarchycalDataTemplate设置样式,以表示Xml属性及其值,如下所示c#wpf样式化HierarchicalDataTemplate表示为键值对链接,c#,wpf,styles,hierarchicaldatatemplate,C#,Wpf,Styles,Hierarchicaldatatemplate,我在WPF中将XML表示为树视图。节点使用HierarchycalDataTemplate设置样式,以表示Xml属性及其值,如下所示 我希望它们被表示为标记/键值对,用某种链接/等于等表示,如下图所示 如何通过xaml更改实现这一点。我需要一些其他的方法,而不是在两人之间引入一个“链接”的图像,以将他们显示为链接。您正在寻找类似的东西吗 如果是这样,可以使用分隔符实现 <Grid> <Grid.ColumnDefinitions> <
我希望它们被表示为标记/键值对,用某种链接/等于等表示,如下图所示
如何通过xaml更改实现这一点。我需要一些其他的方法,而不是在两人之间引入一个“链接”的图像,以将他们显示为链接。您正在寻找类似的东西吗 如果是这样,可以使用
分隔符实现
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="10"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Border Grid.Column="0" BorderBrush="Black" Background="Green" BorderThickness="2"
CornerRadius="3" Margin="2,0,0,0">
<TextBlock VerticalAlignment="Center" Foreground="White" Margin="10,0,10,0" Text="Field" />
</Border>
<Border Grid.Column="2" BorderBrush="Black" Background="LightGray" BorderThickness="2"
CornerRadius="3" >
<TextBlock Margin="10,0,10,0" Text="Test1" />
</Border>
<Border Grid.Column="1" Margin="-6" Background="White" Height="5" CornerRadius="2">
<Separator Background="Black" Margin="2,0,2,0"/>
</Border>
</Grid>
我尝试更像是“等于”或“链接符号”,但这样就可以了。感谢您的快速响应。@madmonk88我想上面的答案会给您一个想法,您仍然可以用两个矩形或边框项替换分隔符,以实现您的期望(相等符号)。有一个疑问,当边距为负数时会发生什么?对于分隔符的父级,您提到了Margin=“-6”。
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="10"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Border Grid.Column="0" BorderBrush="Black" Background="Green" BorderThickness="2"
CornerRadius="3" Margin="2,0,0,0">
<TextBlock VerticalAlignment="Center" Foreground="White" Margin="10,0,10,0" Text="Field" />
</Border>
<Border Grid.Column="2" BorderBrush="Black" Background="LightGray" BorderThickness="2"
CornerRadius="3" >
<TextBlock Margin="10,0,10,0" Text="Test1" />
</Border>
<Border Grid.Column="1" Margin="-6" Background="White" Height="5" CornerRadius="2">
<Separator Background="Black" Margin="2,0,2,0"/>
</Border>
</Grid>