Дополнительные пробелы в заголовках столбцов представления списка - PullRequest
0 голосов
/ 19 марта 2020

У меня очень неприятная проблема с моим многоколоночным списком. Когда я расширяю или уменьшаю ширину столбца во время выполнения приложения, он добавляет нежелательные дополнительные пробелы к обоим концам. Я хочу избавиться от этого пробела.

ListView Control screenshot

XAML

    <ListView Name="listUniversityRecordViewer">
        <ListView.View>
            <GridView>
                <GridViewColumn>
                    <GridViewColumn.Header>
                        <GridViewColumnHeader Content="Student Name" Width="120" Click="StudentNameColumn_Click"/>
                    </GridViewColumn.Header>
                    <GridViewColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding StudentName}"/>
                        </DataTemplate>
                    </GridViewColumn.CellTemplate>
                </GridViewColumn>
                <GridViewColumn>
                    <GridViewColumn.Header>
                        <GridViewColumnHeader Content="Age" Width="120" Click="StudentAgeColumn_Click"/>
                    </GridViewColumn.Header>
                    <GridViewColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding StudentAge}"/>
                        </DataTemplate>
                    </GridViewColumn.CellTemplate>
                </GridViewColumn>
                <GridViewColumn>
                    <GridViewColumn.Header>
                        <GridViewColumnHeader Content="Admission Date" Width="120" Click="StudentAdmDateColumn_Click"/>
                    </GridViewColumn.Header>
                    <GridViewColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding AdmissionDt}"/>
                        </DataTemplate>
                    </GridViewColumn.CellTemplate>
                </GridViewColumn>
            </GridView>
        </ListView.View>
        <ListView.ItemContainerStyle>
            <Style TargetType="ListViewItem">
                <Setter Property="Foreground" Value="Red"/>
            </Style>
        </ListView.ItemContainerStyle>
    </ListView>

Я пытался использовать GridViewColumn Header="StudentName" Width="120" DisplayMemberBinding="{Binding StudentName}" вместо. Это сработало, но лишило меня возможности реализовать событие Click="StudentNameColumn_Click", которое мне нужно больше всего. Пожалуйста, помогите мне найти способ устранения проблемы пробелов при сохранении события щелчка столбца.

1 Ответ

1 голос
/ 19 марта 2020

Проблема в том, что вы устанавливаете Width="120" на GridViewColumnHeader. Переместите Width на GridViewColumn, и все должно работать нормально.

Кроме того, нет необходимости указывать CellTemplate, если вы не выполняете никаких действий. Вместо этого вы можете просто использовать свойство DisplayMemberBinding.

<GridViewColumn
    Width="120"
    DisplayMemberBinding="{Binding StudentName}">
    <GridViewColumn.Header>
        <GridViewColumnHeader
            Click="StudentNameColumn_Click"
            Content="Student Name" />
    </GridViewColumn.Header>
</GridViewColumn>

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...