相关疑难解决方法(0)

在WPF中为DataGridRow创建ControlTemplate

我想要完成的是自定义控件,DataGrid以便每行都有圆角,没有网格线(只是我正在使用的设计).

我一直在尝试做的是创建一个ControlTemplate修改DataGridRow控件,使它们具有预期的外观.到目前为止,这是我正在使用的:

    <DataGrid Grid.Row="0" Grid.Column="0" Margin="5,5,5,5" AutoGenerateColumns="False" ItemsSource="{Binding Path=MyData}">
        <DataGrid.Resources>
            <Style x:Key="rowStyle" TargetType="{x:Type DataGridRow}">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type DataGridRow}">
                            <Border CornerRadius="8,8,8,8" BorderBrush="Red" BorderThickness="2">
                                <ContentPresenter />
                            </Border>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </DataGrid.Resources>
        <DataGrid.Columns>
            <DataGridTextColumn Header="Foo"  />
            <DataGridTextColumn Header="Baz" />
            <DataGridTextColumn Header="Bar" />
        </DataGrid.Columns>
   </DataGrid>
Run Code Online (Sandbox Code Playgroud)

这个版本显然是基本的(只是库存模板的边框),但是当我运行应用程序时,我看不出任何差异.

那么,问题是如何自定义DataGridRow的控件模板?或者,如果这是不可行的,是否有更好的方法来实现我的目标:?

c# wpf xaml controltemplate

7
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×1

controltemplate ×1

wpf ×1

xaml ×1