我正在尝试修复这个定制的 DevExpress TableView。正如您猜测的那样,以下方法处理 CopyingToClipboard。当我施放 FocusedElement 时,它是一个 BaseEdit,但不是我实际选择的那个。它的 DisplayText 是不同的。
我已经更改了单元格的背景颜色,以确保它具有焦点并且它是被选中的那个。这不是问题。能否请您分享您的智慧。
private void CustomizedTableView_CopyingToClipboard(object sender, CopyingToClipboardEventArgs e)
{
TableView view = sender as TableView;
if (view == null || view.Grid == null)
{
return;
}
BaseEdit edit = System.Windows.Input.Keyboard.FocusedElement as BaseEdit;
edit.Background = Brushes.Red;
VantageUtilities.SafeCopyToClipboard(DataFormats.Text, edit.DisplayText);
e.Handled = true;
}