Zwischenablage Kopieren Objekte aus

Ich bin versucht zu kopieren ein Objekt in die windows-Zwischenablage kopieren und wieder aus. Mein code ist wie folgt:

Kopieren auf Zwischenablage:

Clipboard.Clear();
DataObject newObject = new DataObject(prompts);
newObject.SetData(myString);
Clipboard.SetDataObject(newObject);

Wo prompts ist ein List<Data.Sources.PromptResult> Sammlung.

Kopieren aus Zwischenablage:

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);
}

Den GetFormats() zeigt das format in der Liste und die GetDataPresent(List<Data.Sources.PromptResult>) gibt true zurück, aber wenn ich versuche, um das Objekt aus der Clipboard Klasse mit GetData(List<Data.Sources.PromptResult>) bekomme ich eine Rendite von null.

Hat jemand eine Idee, was falsch sein könnte?

  • Ich lief in das gleiche Probleme, aber ich habe es anders gelöst. Alle die ich tun musste, war, um sicherzustellen, dass Sie jeden Teil meines Objekts (Teilobjekte) war einer serialisierbaren Typ. Weniger code bei weitem. Versuchen Sie den IsSerializable-Methode! Wenn Ihre Klasse nicht serialisierbar sind die Ausnahme beschreibt das problem ziemlich gut.
InformationsquelleAutor James | 2012-01-27
Schreibe einen Kommentar