Когда вы копируете данные из браузера в буфер обмена, он помещает одни и те же данные в буфер обмена в нескольких форматах, включая текст и HTML. Таким образом, вы можете прочитать данные обратно в текстовом или HTML-формате. Однако, когда вы вызываете SetText здесь, вы ТОЛЬКО передаете в формате HTML, поэтому при использовании обычного GetText текстовая версия в буфере обмена отсутствует, и вы получаете нулевое значение.
Вы можете поместить в буфер обмена несколько форматов одновременно (т. Е. Как текст, так и HTML), используя IDataObject, но вы должны выполнить перевод между форматами самостоятельно, прежде чем поместить данные в буфер обмена. Вот пример того, как использовать IDataObject здесь .