如何在Silverlight 4中复制DataGrid中所有单元格(包括DataGridTemplateColumn)的选定内容?

8
使用Silverlight 4,我可以在DataGrid中选择一个或多个单元格(或行和列),按下Control+C键,就可以将内容复制到剪贴板上。这真的很酷。按下Control+V键后,它可以被粘贴到Excel或其他编辑器中。
但是,如果其中一列是DataGridTemplateColumn,则在粘贴时其值为空。这是有道理的,因为该列中可以是任何内容。
如何告诉Control+C复制模板单元格的值呢?
1个回答

14

如果你正在使用数据绑定,那么这个问题其实很简单。你只需将

ClipboardContentBinding
属性与你要复制到该列的值进行绑定即可。

例如:

<data:DataGridTemplateColumn Header="Name" ClipboardContentBinding="{Binding Name}" SortMemberPath="Name">
  <data:DataGridTemplateColumn.CellTemplate>
     <DataTemplate>
        <HyperlinkButton Content="{Binding Name}" Margin="3" />
     </DataTemplate>
  </data:DataGridTemplateColumn.CellTemplate>
</data:DataGridTemplateColumn>

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