通过 Windows 表单项目处理 Class 图书馆项目

Handle Class Library Project Through a Windows Form Project

我想用另一个应用程序处理和控制 C# 中的 Class 库项目。

我打算按照以下步骤操作,

  1. Create a Class Library Project
  2. Add windows form inside this Class Library Project
  3. Create another project but this time a Windows Form Application

  4. Open the Windows form (created in step 2) inside that Class library project through Windows Form Application (Created in step 3)

.

我以前使用 UI 自动化来处理 WPF 或 Windows 表单应用程序,但我如何处理 Class 库项目?

需要指导。

编辑:

我通过在 Windows 表单应用程序中添加 dll 打开了 Class 库表单,然后创建对象并使用 show 方法显示如下表单,

        ClassLibTestProject.Form1 f = new ClassLibTestProject.Form1();
        f.Show();

现在,我想更改 ClassLibrary 项目中文本框中的文本。文本框的名称是 textbox1。 我想做这样的事情 textbox1.text ="Text changed from Windows Form Application"; 但是我应该如何在 Windows 表单应用程序中获取此文本框的句柄?

不要向 "outside world" 公开表单控件,而是提供 public 表单使用者可以调用的方法。

你可以更新你控制的内部方法。

在库项目中

public class Form1
{
    public void UdpateTextBoxWith(string newText)
    {
        textbox1.Text = newText;
    }
}

在 Winforms 应用程序中

var form = new ClassLibTestProject.Form1();
form.Show();

form.UdpateTextBoxWith("New text");