如何像网格一样拆分堆栈面板

如何像网格一样拆分堆栈面板

我需要在 ui 中显示对象的详细信息。我有以下代码,它为类 Category 定义了一个数据模板。我正在尝试获得一个布局,其中成对的成员名称和值将垂直堆叠。但是我希望成员名称具有相同的宽度和相同的值。我应该怎么做才能得到这个布局?

    <DataTemplate DataType="{x:Type local:Category}">
        <Grid HorizontalAlignment="Stretch">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="4*" SharedSizeGroup="a" />
                <ColumnDefinition Width="6*" SharedSizeGroup="b" />
            </Grid.ColumnDefinitions>
            <StackPanel>
                <StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal" Grid.ColumnSpan="2">
                    <TextBlock Text="Id" Grid.Column="0" Grid.IsSharedSizeScope="True" />
                    <TextBlock Text="{Binding Path=Id}" Grid.Column="1"/>
                </StackPanel>
                <StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal" Grid.ColumnSpan="2">
                    <TextBlock Text="Name" Grid.Column="0" Grid.IsSharedSizeScope="True" />
                    <TextBlock Text="{Binding Path=Name}" Grid.Column="1"/>
                </StackPanel>
            </StackPanel>
        </Grid>
    </DataTemplate>

最佳答案

我认为您可以将 Grid 分成两行并消除使用 StackPanels 吗?

关于c# - 如何像网格一样拆分堆栈面板,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10243450/

10-13 06:53