Подтвердить что ты не робот

SharedSizeGroup в ListView.ItemTemplate

У меня есть этот сценарий, где я хочу разделить размер столбца между всеми ListViewItems, и я использую SharedSizeGroup в определениях столбцов, но он не работает:

<ListView ItemsSource="{Binding}">
    <ListView.ItemTemplate>
        <DataTemplate>
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto" SharedSizeGroup="A" />
                    <ColumnDefinition Width="Auto" SharedSizeGroup="B" />
                    <ColumnDefinition Width="Auto" SharedSizeGroup="C" />
                </Grid.ColumnDefinitions>
                <TextBlock Grid.Column="0" Margin="10,0" Text="{Binding Text1}" />
                <TextBlock Grid.Column="1" Margin="10,0" Text="{Binding Text2}" />
                <TextBlock Grid.Column="2" Margin="10,0" Text="{Binding Text3}" />
            </Grid>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

Я знаю, что возможное решение использует GridView как ListView.View, но есть несколько проблем дизайна, которые мешают нам это делать. Есть ли другой способ добиться разделения ширины столбцов?

Это то, чего я хочу достичь (колонки с одинаковыми цветами должны делиться шириной):

enter image description here

Спасибо заранее.

4b9b3361

Ответ 1

Единственное, чего не хватает, это область, которую я думаю, добавьте Grid.IsSharedSizeScope ="True" к атрибутам ListView.