views:

367

answers:

2

I'm trying to center align data in a ListView/Gridview where I use DisplayMemberBinding.

This is (partially) how my gridview looks:

<ListView>
    <ListView.View>
        <GridView>
            <GridView.Columns>
               <GridViewColumn DisplayMemberBinding="{Binding Path=Timi}" Width="Auto">
                   <GridViewColumnHeader Content="Tími" Click="GridViewColumnHeader_Click" ></GridViewColumnHeader>
                </GridViewColumn>
            </GridView.Columns>
        </GridView>
    </ListView.View>
</ListView>

I tried to use CellTemplate like explained on this page http://msdn.microsoft.com/en-us/library/system.windows.controls.gridviewcolumn.celltemplate.aspx but it didn't work and then later I read somewhere that one should never use cellTemplate and DisplayMemberBinding together.

So the question is : How do I center the gridview data when I use DisplayMemberBinding to bind the data to the gridview?

Thanks in advance.

A: 

Try using HorizontalContentAlignment="Center" on GridViewColumnHeader and see if that helps.

wpfwannabe
I just tried that but it doesn't work for some reason.
Bigginn
+1  A: 

I figured out how to do this, but I had to alter a lot.
I followed the info on this link:
http://stackoverflow.com/questions/560581/how-to-autosize-and-right-align-gridviewcolumn-data-in-wpf

first of all I had to add this into my Resource file :

<Style TargetType="ListViewItem">
    <Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>

and then change my listview so it looked like this:

<ListView >
    <ListView.View>
        <GridView>
            <GridView.Columns>
                <GridViewColumn>
                     <GridViewColumnHeader Content="ColName" Click="GridViewColumnHeader_Click" ></GridViewColumnHeader>
                     <GridViewColumn.CellTemplate>
                         <DataTemplate>
                             <TextBlock Text="{Binding Path=col1, StringFormat='0.00'}" TextAlignment="Center" />
                         </DataTemplate>
                         </GridViewColumn.CellTemplate>
                     </GridViewColumn>
                 <GridView.Columns>
            <GridView>
    <ListView.View>
<ListView >

Thanks for the help
Bigginn

Bigginn
well, technically I had to get rid of the DisplayMemberBinding tag :)
Bigginn