【发布时间】:2015-04-08 23:18:08
【问题描述】:
我以前做过 ContextMenus,但对于 DataGrid,它们似乎太复杂了。我只想将单元格的内容复制到剪贴板中。我怎样才能得到这个工作?似乎有很多选择,但没有固定的方法。
<DataGrid ItemsSource="{Binding MyStuff}">
<DataGridTextColumn Binding="{Binding MyContentIWantToCopy}">
<DataGridTextColumn.CellStyle>
<Setter Property="ContextMenu">
<Setter.Value>
<ContextMenu>
<MenuItem Command="ApplicationCommands.Copy"/>
</ContextMenu>
</Setter.Value>
</Setter>
<DataGridTextColumn.CellStyle>
</DataGridTextColumn>
</DataGrid>
理想情况下,这将是最简单的方法。但当然,它不起作用。
但是,我也尝试过命令 -
Paste from Excel to WPF DataGrid
MVVM binding command to contextmenu item
Create contextmenus for datagrid rows
这些都不起作用。通常,结果是出现一个上下文菜单,并且要么是灰色按钮,要么是不执行任何操作的按钮,从不触发命令。我只想将 Datagrid 单元格中的文本复制到剪贴板中。我以前以类似的方式对各种对象进行过此操作 - 甚至是 Listviews - 但我找不到 DataGrid 和 DataGridTextColumns 的任何解决方案。
【问题讨论】: