我想用其他应用程序处理和控制C#中的类库项目。
我打算按照以下步骤操作,
- 创建类库项目
- 在此类库项目中添加Windows表单
创建另一个项目,但是这次是Windows窗体应用程序
在其中打开Windows窗体(在步骤2中创建)。 通过Windows窗体应用程序创建的类库项目(在 步骤3)
。
我以前曾使用过UI自动化来处理WPF或Windows窗体应用程序,但如何处理类库项目?
请提供指导。
编辑:
我通过在Windows窗体应用程序中添加dll,然后创建对象并使用show方法显示如下所示的窗体,来打开类库窗体
ClassLibTestProject.Form1 f = new ClassLibTestProject.Form1();
f.Show();
现在,我想更改ClassLibrary项目中存在的文本框中的文本。文本框的名称为 textbox1 。 我想做这样的事情textbox1.text =“从Windows Form Application更改了文本”; 但是我应该如何在Windows窗体应用程序中获取此文本框的句柄?
答案 0 :(得分:1)
不要将表单控件暴露给“外部世界”,而应提供可由表单使用者调用的公共方法。
内部方法可以更新控件。
在图书馆项目中
public class Form1
{
public void UdpateTextBoxWith(string newText)
{
textbox1.Text = newText;
}
}
在Winforms应用程序中
var form = new ClassLibTestProject.Form1();
form.Show();
form.UdpateTextBoxWith("New text");