Winforms 如何通过值而不是引用传递ListView?
我有一个使用我的listView项的函数,在我的函数中,我需要从列表中删除项:Winforms 如何通过值而不是引用传递ListView?,winforms,c++-cli,Winforms,C++ Cli,我有一个使用我的listView项的函数,在我的函数中,我需要从列表中删除项: bool isTherePath(ListView^ allSysParamsList, ListView^ paramList,String^ source,String^ target) 我的问题是,当删除项时,它们也会从调用函数的主窗体中删除。 如何将此ListView作为副本而不是引用传递,以便原始ListView保持完整?您需要从ListView获得什么?您不能只传递一个包含所有ListView项的新列
bool isTherePath(ListView^ allSysParamsList, ListView^ paramList,String^ source,String^ target)
我的问题是,当删除项时,它们也会从调用函数的主窗体中删除。
如何将此ListView作为副本而不是引用传递,以便原始ListView保持完整?您需要从ListView获得什么?您不能只传递一个包含所有ListView项的新列表吗?这是不可能的,您需要停止尝试。与所有控件类一样,ListView是不可序列化的,它有太多与之关联的运行时状态。在本机C++中,它相当于std::thread,也不能复制它。您需要通过将模型与视图分离来解决此问题。
列表上的一方^
您想要的一切,用户查看的内容应该是断开连接的,数据的快照。@HansPassant谢谢。。发帖作答