WPF重用DataGrid模板列和数据模板

4

我已经建立了一个包含自定义列的数据表格:

<DataGridTemplateColumn 
    Header="{x:Static local:MainWindowResources.gasNameLabel}" 
    Width="*" 
    MinWidth="150">
    <DataGridTemplateColumn.CellEditingTemplate>
        <DataTemplate>
            <TextBox 
                Name="GasNameTextBox" 
                Text="{Binding Path=Name, UpdateSourceTrigger=PropertyChanged}" 
                Padding="2,0,0,0" />
            <DataTemplate.Triggers>
                <Trigger 
                    SourceName="GasNameTextBox" 
                    Property="IsVisible" 
                    Value="True">
                    <Setter 
                        TargetName="GasNameTextBox" 
                        Property="FocusManager.FocusedElement" 
                        Value="{Binding ElementName=GasNameTextBox}"/>
                </Trigger>
            </DataTemplate.Triggers>
        </DataTemplate>
    </DataGridTemplateColumn.CellEditingTemplate>
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <Label 
                Name="GasNameLabel" 
                Content="{Binding Path=Name}" 
                Padding="0,0,0,0" 
                Margin="6,2,2,2" />
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

作为我将要重复使用的列定义,我希望能够将其定义为外部DataTemplate,只提供要绑定的属性(Binding Path = ...),其余部分可以被重用...这样我就可以定义文本模板、复选框模板等,并在各种网格中重用它们,只需更改绑定到不同属性的内容。
这是否可能?
Vladan

https://dev59.com/Fmgt5IYBdhLWcg3wvgBu - Herman Cordes
1个回答

0
使用UserControl代替,将其放入应用程序资源中,并重复使用该用户控件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接