Я пытаюсь скопировать объект в буфер обмена windows и обратно. Мой код выглядит так:
Copy on to clipboard:
Clipboard.Clear();
DataObject newObject = new DataObject(prompts);
newObject.SetData(myString);
Clipboard.SetDataObject(newObject);
Where prompts
is a List
collection.
Копируем из буфера обмена:
IDataObject dataObject = System.Windows.Forms.Clipboard.GetDataObject();
if (dataObject.GetDataPresent(typeof(List<Data.Sources.PromptResult>)))
{
Type type = typeof(List<Data.Sources.PromptResult>);
Object obj = dataObject.GetData(type);
return (List<Data.Sources.PromptResult>)dataObject.GetData(type);
}
Функция GetFormats()
показывает, что формат находится в списке, а функция GetDataPresent(List
возвращает true, но если я попытаюсь получить объект из класса Clipboard
с помощью GetData(List
, я получу null.
Есть ли у кого-нибудь идеи, что может быть не так?