急!如何让Clipboard中的Text和Html类型数据不相互覆盖~跪求仙人指路
似乎Clipboard中Text和Html这两种格式是互斥的,我给一种格式设置Data的时候,会把另一种格式的Data给冲掉。请看下面的Code:
StringBuilder sb1 = new StringBuilder();
sb1.Append(@"Version:0.9
StartHTML:71
EndHTML:170
StartFragment:140
EndFragment:160
StartSelection:140
EndSelection:160");
sb1.Append("<html><body>");
sb1.AppendFormat("<span>{0}</span>", "ABC");
sb1.AppendFormat("<img src='{0}' />", @"C:\1.png");
sb1.Append("</body></html>");
Clipboard.SetData(DataFormats.Text, "ABC");
Clipboard.SetData(DataFormats.Html, sb1.ToString());
当最后一句执行完,我赋给DataFormats.Text格式的“ABC”就被冲掉了,因为Clipboard.GetText()返回的是null了。
请高人指点,要怎么样设置,才能使两种格式的数据不互相影响?
(ps: 我这么做的目的是,想把不同的数据分别以Text和Html的形式保存在Clipboard中,以使不支持html的Notepad也能从以DataFormats.Text格式从clipboard里面拿到文字信息。)
------解决方案--------------------
C# code
...
DataObject multi = new DataObject();
multi.SetData(DataFormats.Text, "ABC");
multi.SetData(DataFormats.Html, sb1.ToString());
Clipboard.SetDataObject(multi, true);