Индивидуальные датагрид в WPF - PullRequest
       26

Индивидуальные датагрид в WPF

0 голосов
/ 01 сентября 2011

Я новичок в wpf и работаю над бухгалтерским приложением. Моя проблема настолько проста, но я удивлен, что не могу найти упрощенное решение для этого, оно выглядит так:

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

 | col1 | col2| col3|

 |      |     |     |

 |      |     |     |

 |-----|------|-----|

Я сделал все, что мог, но я достиг этого:

enter image description here

Я не понимаю, почему моя вертикальлинии не касаются границы .......

Это xaml, который я использую для создания сетки данных:

<DataGrid Grid.Row="1" AutoGenerateColumns="False" x:Name="dataGrid1" VerticalAlignment="Stretch"
        CanUserReorderColumns="False" GridLinesVisibility="None" HorizontalGridLinesBrush="White"
        VerticalGridLinesBrush="White" Background="Transparent" Foreground="White" CanUserResizeRows="False"
        BorderBrush="White" BorderThickness="2" RowBackground="#FF008284" MinRowHeight="5" FontSize="14"
        ItemsSource="{Binding  }" Margin="8" SelectionMode="Single">
    <DataGrid.Resources>
        <Style TargetType="{x:Type DataGridColumnHeader}">
            <Setter Property="VerticalContentAlignment" Value="Center" />
            <Setter Property="VerticalAlignment" Value="Stretch" />
            <Setter Property="Background" Value="#FF008284" />
            <Setter Property="Foreground" Value="White" />
            <Setter Property="Visibility" Value="Visible" />
            <Setter Property="Height" Value="40" />
            <Setter Property="HorizontalAlignment" Value="Stretch" />
            <Setter Property="HorizontalContentAlignment" Value="Center" />
            <Setter Property="BorderThickness" Value="1,1,1,1" />
            <Setter Property="BorderBrush" Value="White" />
        </Style>
        <Style TargetType="{x:Type DataGridCell}">
            <Setter Property="BorderThickness" Value="1,0,1,0" />
            <Setter Property="BorderBrush" Value="White" />
            <Setter Property="TextBlock.TextAlignment" Value="Center" />
            <Setter Property="Height" Value="30" />
            <Setter Property="HorizontalContentAlignment" Value="Right" />
            <Setter Property="TextBlock.FontSize" Value="14" />
        </Style>
    </DataGrid.Resources>
    <DataGrid.Columns>
        <DataGridTextColumn Width="120*" Header="Account Head" CanUserResize="False" CanUserReorder="False"
                CanUserSort="False" Binding="{Binding Path=AC_NAME}" />
        <DataGridTextColumn Width="60*" Header="Category" CanUserResize="False" CanUserReorder="False"
                CanUserSort="False" Binding="{Binding Path=AC_CATE}" FontSize="16" />
        <DataGridTextColumn Width="80*" Header="Debit" CanUserResize="False" CanUserReorder="False" CanUserSort="False"
                Binding="{Binding Path=AC_TOT_DR}" FontSize="16" />
        <DataGridTextColumn Width="80*" Header="Credit" CanUserResize="False" CanUserReorder="False" CanUserSort="False"
                Binding="{Binding Path=AC_TOT_CR}" FontSize="16" />
    </DataGrid.Columns>
</DataGrid>

Спасибо за внимание ....

1 Ответ

0 голосов
/ 01 сентября 2011

Вам необходимо изменить значение по умолчанию Template из DataGrid, поскольку ничего не создается под последней строкой, кроме горизонтальной полосы прокрутки.

...