Dev
Dev

Reputation: 1826

How to add a control to WPF listview header

I have a listview in a WPF app and I am currently using the click event of the listview header to sort but I would like to add a small button in each header to sort the data and ignore the rest of the header.

<ListView x:Name="lbxTest" behav:GridViewColumnHeaderClick.Command="{Binding SortViewCommand}" HorizontalAlignment="Left" Height="135" VerticalAlignment="Top">
    <ListView.View>
        <GridView>
            <GridViewColumn Header="ID" Width="100" DisplayMemberBinding="{Binding id}" />
            <GridViewColumn Header="Format" Width="100" DisplayMemberBinding="{Binding format}" />
            <GridViewColumn Header="Date" Width="100" DisplayMemberBinding="{Binding Date}" />
        </GridView>
    </ListView.View>
</ListView>

Upvotes: 1

Views: 2833

Answers (1)

mm8
mm8

Reputation: 169200

You could add a Button to the HeaderTemplate of each GridViewColumn, e.g.:

<GridViewColumn Header="ID" Width="100" DisplayMemberBinding="{Binding id}">
    <GridViewColumn.HeaderTemplate>
        <DataTemplate>
            <Button Content="Sort" Command="{Binding YourSortCommand}" />
        </DataTemplate>
    </GridViewColumn.HeaderTemplate>
</GridViewColumn>

Upvotes: 2

Related Questions