Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#wpf样式化HierarchicalDataTemplate表示为键值对链接_C#_Wpf_Styles_Hierarchicaldatatemplate - Fatal编程技术网

c#wpf样式化HierarchicalDataTemplate表示为键值对链接

c#wpf样式化HierarchicalDataTemplate表示为键值对链接,c#,wpf,styles,hierarchicaldatatemplate,C#,Wpf,Styles,Hierarchicaldatatemplate,我在WPF中将XML表示为树视图。节点使用HierarchycalDataTemplate设置样式,以表示Xml属性及其值,如下所示 我希望它们被表示为标记/键值对,用某种链接/等于等表示,如下图所示 如何通过xaml更改实现这一点。我需要一些其他的方法,而不是在两人之间引入一个“链接”的图像,以将他们显示为链接。您正在寻找类似的东西吗 如果是这样,可以使用分隔符实现 <Grid> <Grid.ColumnDefinitions> <

我在WPF中将XML表示为树视图。节点使用HierarchycalDataTemplate设置样式,以表示Xml属性及其值,如下所示


我希望它们被表示为标记/键值对,用某种链接/等于等表示,如下图所示
如何通过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>