IDataObject: GetDataPresent() liefert true, GetData() liefert aber null - Warum?

24. Mai 2005 18:16

Angenommen Sie haben eigene Daten ins Clipboard kopiert, indem Sie SetData( "NameTag", data) aufgerufen haben. Später wollen Sie GetData("NameTag") aufrufen, um die Daten aus dem Clipboard wieder zurück zu kopieren. Um sicherzustellen das das geht, haben Sie vorher GetDataPresent("NameTag") aufgerufen.

GetDataPresent() hat auch brav ein 'true' geliefert - wenn Sie aber die Daten abholen wollen, dann liefert GetData() nur noch 'null'. Das steht im Gegensatz zur Dokumentation auf MSDN - zumindest zum Teil.

Hier der Grund: In der Dokumentation wird ein wichtiges Detail nicht erwähnt: Das Objekt, das man mit SetData() ins Clipboard kopiert muss eine ganz wesentliche Eigenschaft haben: Es muss serialisierbar sein.

Ist es das nicht - dann gibts keine Fehlermeldungen oder sonstwas: Statt dessen liefert GetData() eben einfach 'null'. Wäre schön, wenn die Dokumentation das sagen würde... Im nachinein kann man sich das natürlich denken - nur hat man im nachhinein auch einige Stunden damit zugebracht über das Problem nachzudenken, die man auch sinnvoller hätte verbringen können.

Kommentare sind geschlossen

Kalender

<<  Mai 2012  >>
MoDiMiDoFrSaSo
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

View posts in large calendar