在两个单独的项目之间交换 ListBox 项

Exchange ListBox items between two separate projects

假设我们有一个 C# 项目,它借助按钮文本从文本框添加到列表框。

现在假设我们有第二个项目,我们没有源代码,我们希望将列表框中的项目发送到项目中的每个独立文本框数字 2

有什么方法可以实现吗?

是的,有办法。从容易出错但易于编写的将击键注入其他应用程序的输入队列(SendKeys, combined with giving the other application the keyboard focus first) to the more refined ways of UI Automation and directly fiddling with the Windows API to change the text boxes' contents by sending WM_SETTEXT。这取决于其他应用程序的编写方式(例如自定义 UI 框架通常不会使用本机 Windows 控件,也不支持辅助功能)。

使用剪贴板可以使 SendKeys 方法更加可靠,尤其是对于键盘上可能不存在的字符。对于一次性任务,我可能会这样做。我曾经做过类似的事情,通过在 PowerShell 中编写脚本将我的 RSS 提要从一个应用程序迁移到另一个应用程序。如果您寻求稳健性,您应该研究其他选项。 UI 自动化使用起来可能很麻烦,但至少提供了 APIs 来直接处理这个问题(尽管您必须了解一堆概念才能理解如何使用它)。 Windows API 路线要求您相当了解 Windows 如何在 .NET 框架下工作。