通过 Windows 表单项目处理 Class 图书馆项目
Handle Class Library Project Through a Windows Form Project
我想用另一个应用程序处理和控制 C# 中的 Class 库项目。
我打算按照以下步骤操作,
- Create a Class Library Project
- Add windows form inside this Class Library Project
Create another project but this time a Windows Form Application
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");
我想用另一个应用程序处理和控制 C# 中的 Class 库项目。
我打算按照以下步骤操作,
- Create a Class Library Project
- Add windows form inside this Class Library Project
Create another project but this time a Windows Form Application
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");