Отключить перетаскивание файлов в Richtextbox в .NET

Я использую форматированное текстовое поле .NET и хочу, чтобы для свойства EnableAutoDragDrop было установлено значение True. Это позволяет пользователю перетаскивать текст, rtf, изображения и т. д.

Однако мне нужно самому обрабатывать файлы, сброшенные в RichTextBox — я не хочу, чтобы они были встроены как объекты OLE, когда они сбрасываются.

Как я могу преодолеть это? Есть ли способ удалить встроенные файлы из RichTextBox?

(Я нашел API DragAcceptFiles, который по какой-то причине не работает.)

Спасибо!


person Jiri    schedule 17.03.2010    source источник


Ответы (2)


Попробуйте обработать событие DragDrop.

Пример.

person SLaks    schedule 17.03.2010
comment
Спасибо за Ваш ответ. Впрочем, я уже знаю, как это сделать. Но я хочу, чтобы EnableAutoDragDrop был включен, потому что почти невозможно обрабатывать события перетаскивания так же, как это делает элемент управления сам по себе. Побочный эффект заключается в том, что когда он включен, файлы, которые пользователь туда сбрасывает, внедряются в элемент управления, а я этого не хочу. - person Jiri; 17.03.2010

Вы можете ознакомиться с этой статьей MSDN. Если вы не хотите блокировать файл, вы можете использовать поток ввода-вывода. Погуглите, и это решит вашу проблему.

person SOAMad    schedule 03.01.2015