WPF:UniformGrid中的ColumnSpan

WPF:UniformGrid中的ColumnSpan,wpf,xaml,layout,uniformgrid,Wpf,Xaml,Layout,Uniformgrid,我知道UniformGrid没有附加属性ColumnSpan和RowSpan。但我真正需要的是具有固定宽度的容器和具有固定宽度的内部单元格,除了少数UIElements之外,它们应该填充在少数单元格中。 例如: <UniformGrid Columns="4"> <TextBlock>1</TextBlock> <TextBlock>2</TextBlock> <TextBlock Grid.ColumnSpan="2">

我知道UniformGrid没有附加属性ColumnSpan和RowSpan。但我真正需要的是具有固定宽度的容器和具有固定宽度的内部单元格,除了少数UIElements之外,它们应该填充在少数单元格中。 例如:

<UniformGrid Columns="4">   <TextBlock>1</TextBlock>
<TextBlock>2</TextBlock>
<TextBlock Grid.ColumnSpan="2">34</TextBlock>
1
2.
34
UniformGrid对我来说非常理想,除了以下情况:最后一个文本块不是填充两个单元格。 是否可以使用其他解决方案来提供所需的结果? 谢谢你的建议


还有。。。为什么XAML解析器没有在处理此标记时出错而停止

我只想使用XAML,但目前我还没有找到答案。所以,我使用了以下解决方案:将所有元素放在水平包装中,并为代码中的每个元素设置宽度

您可以将网格与具有不同*宽度的列一起使用:

<Grid>
  <Grid.ColumnDefinitions>
    <ColumnDefinition Width="*" />
    <ColumnDefinition Width="*" />
    <ColumnDefinition Width="2*" />
  </Grid.ColumnDefinitions>

  <TextBlock>1</TextBlock>
  <TextBlock Grid.Column="1">2</TextBlock>
  <TextBlock Grid.Column="2">34</TextBlock>
</Grid>

1.
2.
34

用于P.S.:您可以随时在任何元素上设置
Grid.ColumnSpan
(以及所有其他附加属性)。当元素的父元素不是网格时,它就没有效果。