Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winforms 如何通过值而不是引用传递ListView?_Winforms_C++ Cli - Fatal编程技术网

Winforms 如何通过值而不是引用传递ListView?

Winforms 如何通过值而不是引用传递ListView?,winforms,c++-cli,Winforms,C++ Cli,我有一个使用我的listView项的函数,在我的函数中,我需要从列表中删除项: bool isTherePath(ListView^ allSysParamsList, ListView^ paramList,String^ source,String^ target) 我的问题是,当删除项时,它们也会从调用函数的主窗体中删除。 如何将此ListView作为副本而不是引用传递,以便原始ListView保持完整?您需要从ListView获得什么?您不能只传递一个包含所有ListView项的新列

我有一个使用我的listView项的函数,在我的函数中,我需要从列表中删除项:

bool isTherePath(ListView^ allSysParamsList, ListView^ paramList,String^ source,String^ target) 
我的问题是,当删除项时,它们也会从调用函数的主窗体中删除。
如何将此ListView作为副本而不是引用传递,以便原始ListView保持完整?

您需要从ListView获得什么?您不能只传递一个包含所有ListView项的新列表吗?这是不可能的,您需要停止尝试。与所有控件类一样,ListView是不可序列化的,它有太多与之关联的运行时状态。在本机C++中,它相当于std::thread,也不能复制它。您需要通过将模型与视图分离来解决此问题。
列表上的一方^
您想要的一切,用户查看的内容应该是断开连接的,数据的快照。@HansPassant谢谢。。发帖作答