0

我正在使用生成动态列的 WPF Devexpress GridControl。UI 从几年(假设 2020 年到 2070 年)每月将所有列渲染一列。所以我正在尝试从 excel 中复制一行的值,该行的值从 2020 到 2061,大约是 500 个值/单元格。但是默认的 TableView.OnPaste() 只复制 242 个单元格。我尝试了各种方法来弄清楚为什么会这样?但是没有用。

我禁用了虚拟化,尝试一直滚动以确保列被渲染,一切都在那里,另一个有趣的事情是:

TableView 事件:ClipboardRowCellValuePasting=void OnClipboardRowCellValuePasting(对象发送者,ClipboardRowCellValuePastingEventArgs e)

对所有 500 个单元格调用此事件,但在 242 个单元格之后,值将被清空。所以它肯定在粘贴实现中它在一定限制后将值设置为空。

那么有人可以建议如何解决这个问题吗?

4

1 回答 1

0

来自 Devex 的回答

为避免此缺点,有必要使用 SourcePriority 属性更改剪贴板源优先级,如下所示:

ClipboardSourceFactory<ColumnWrapper, RowBaseWrapper>.SourcePriority = new ClipboardSourceType[]
{
    ClipboardSourceType.XMLSpreadsheet,
    ClipboardSourceType.Excel,
    ClipboardSourceType.Csv,
    ClipboardSourceType.UnicodeText,
    ClipboardSourceType.Text
};
于 2020-07-24T14:26:35.147 回答