wpf datagrid скопируйте и вставьте то, что вы видите - PullRequest
6 голосов
/ 03 августа 2011

Я использую сетку данных в wpf, и по умолчанию она имеет функцию копирования и вставки.

У меня есть столбец даты и времени, и я использовал формат привязки и строки, чтобы он отображался в формате даты и временихочу.

Однако, когда я копирую и вставляю, вставленный текст становится неформатированным временем даты.

Есть ли способ сделать копию вставки на «То, что вы видите, то и получается»? "

Спасибо, Кев

Редактировать: я пытался использовать ClipboardContentBinding, помещая то же самое, что я делал в связывании.И это не сработало

1 Ответ

1 голос
/ 06 августа 2011

DataGrid имеет несколько точек расширения буфера обмена, в которые вы можете зацепиться и посмотреть, что происходит.Сама сетка имеет событие CopyingRowClipboardContent , которое помимо наличия всей необходимой информации в аргументах события имеет хороший вспомогательный метод FormatClipboardCellValues ​​(строковый формат) .Кроме того, каждый столбец имеет CopyingCellClipboardContent , который можно использовать для ваших конкретных потребностей в столбце времени.

Примечание. По умолчанию связанные столбцы DataGrid (производные от DataGridBoundColumn ) будутсделать так, чтобы ClipboardContentBinding указывал на свойство Binding, если это не указано явно.

...