使用自定义列启用DataGrid复制

时间:2014-06-11 11:16:02

标签: wpf wpfdatagrid datatemplate

我有一个DataGrid,其中我有自定义列和列模板,以插入特殊的工具提示。这样做时,如何启用将此数据复制到剪贴板?

我的DataGrid的XAML代码:

<DataGrid x:Name="CapabilityGrid" IsReadOnly="True" AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTemplateColumn Header="Variable">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Name}" ToolTip="{Binding Name, Converter={StaticResource tooltipConverter}}" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
        <DataGridTemplateColumn Header="Value">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Value}"></TextBlock>
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>

1 个答案:

答案 0 :(得分:3)

您可以使用ClipboardContentBinding

  

获取或设置在获取或设置剪贴板的单元格内容时要使用的绑定对象。

所以在XAML中你可以做到

<DataGridTemplateColumn Header="Value" ClipboardContentBinding="{Binding Value}">