【发布时间】:2010-08-11 12:22:57
【问题描述】:
我有一个使用 .net 框架 4.0 版并在 VS 2010 上运行的 c# 项目。我创建了一个填充了一些扩展树节点的树视图。我希望用户能够通过上下文菜单或键盘快捷键(而不仅仅是拖放)复制、剪切和粘贴这些节点到剪贴板。
复制时代码运行良好,但是当我尝试粘贴这些节点时,它会引发以下错误: 无法将“System.IO.MemoryStream”类型的对象转换为“Namespace Path.TreeNodeEx”类型。
这是我的剪切/复制/粘贴方法。
public void Copy()
{
Clipboard.SetData("Tree Node Ex", CurrentTreeNode.Clone());
}
public void Paste()
{
CurrentTreeNode.Nodes.Add((TreeNodeEx)Clipboard.GetData("Tree Node Ex"));
}
我怀疑问题与序列化有关,但我尝试实现 ISeralizable 接口和 [Serializable] 属性无济于事。
有什么建议吗?
【问题讨论】:
标签: visual-studio-2010 treeview c#-4.0 copy-paste treenode