Different layout on the last datagrid line

Asked

Viewed 41 times

0

I have a datagrid where I show values referring to the beginning and end of a period. For this, I created the columntemplate down with 2 textblocks, but in the last line, I show a value that is the difference between these first 2 values. I would like to center the first textblock on the last line since only it is populated in this case.

<DataGridTemplateColumn>
    <DataGridTemplateColumn.Header>
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="*" />
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition Width="10"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <TextBlock Text="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=DataContext.Officer11Nome}"
                       HorizontalAlignment="Center" 
                       Grid.Column="0"
                       Grid.Row="0"
                       Grid.ColumnSpan="3"
                       />
            <TextBlock Text="Abertura" 
                       HorizontalAlignment="Center" 
                       Grid.Column="0"
                       Grid.Row="1"
                       />

            <TextBlock Text="Fechamento" 
                       HorizontalAlignment="Center" 
                       Grid.Column="2"
                       Grid.Row="1"
                       />
        </Grid>
    </DataGridTemplateColumn.Header>

    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*"/>
                    <ColumnDefinition Width="10"/>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <TextBlock Text="{Binding Officer1Abertura}" Margin="2,0,2,0" TextAlignment="Left" Grid.Column="0"/>
                <TextBlock Text="{Binding Officer1Fechamento}" Margin="2,0,2,0" TextAlignment="Right" Grid.Column="2"/>
            </Grid>
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

1 answer

0


I created another property with the settings I needed, so, as the others are not populated in this case, the value adjusted well.

<TextBlock Text="{Binding Officer1Percentagem}" TextAlignment="Center" Grid.Column="0" Grid.ColumnSpan="3"/>
<TextBlock Text="{Binding Officer1Abertura}" TextAlignment="Right" Grid.Column="0"/>
<TextBlock Text="{Binding Officer1Fechamento}" TextAlignment="Right" Grid.Column="2"/>

Browser other questions tagged

You are not signed in. Login or sign up in order to post.