在WPF中创建普通的DataGridTemplateColumn[英] Create Common DataGridTemplateColumn in WPF

本文是小编为大家收集整理的关于在WPF中创建普通的DataGridTemplateColumn的处理方法,想解了在WPF中创建普通的DataGridTemplateColumn的问题怎么解决?在WPF中创建普通的DataGridTemplateColumn问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

我需要创建一个通用的DataGridTemplateColumn,这样我就可以在我的应用程序中使用不同的对象和属性.

这是一些示例代码,我在我的项目中使用

<DataGridTemplateColumn Width="100*">
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Path=Age}"/>
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>   
    <DataGridTemplateColumn.CellEditingTemplate>
        <DataTemplate>
            <TextBox Text="{Binding Path=Age}"/>
        </DataTemplate>
    </DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>

我需要一个通用版本的代码,以便我可以将 DataTemplate 放在 app.xaml 中并在我的代码中引用它

推荐答案

你不能直接模板DataGridTemplateColumn.但幸运的是,您可以为 cells 使用全局模板.看例子:

App.xaml

<Application.Resources>

    <DataTemplate x:Key="CellEdintingTemplate">
        <TextBox Text="{Binding Path=Age}" />
    </DataTemplate>
    <DataTemplate x:Key="CellTemplate">
        <TextBlock Text="{Binding Path=Age}" />
    </DataTemplate>

</Application.Resources>

使用

    <DataGrid>
        <DataGrid.Columns>
            <DataGridTemplateColumn 
                 CellEditingTemplate="{StaticResource CellEdintingTemplate}" 
                 CellTemplate="{StaticResource CellTemplate}" />
        </DataGrid.Columns>
    </DataGrid>

本文地址:https://www.itbaoku.cn/post/1794107.html