如何在类库中调用窗体控件

sunny906 2009-12-21 11:15:57
新建一个类库
using System.Windows.Forms;
public class MyControl
{
private richTextBox rtb=null;
public MyControl(richTextBox rtb)
{
this.rtb=rtb;
}

public void AppendText()
{
rtb.AppendText("Hello");
}
}

在Form窗体上有一个richTextBox
MyControl mc=new MyControl(richTextBox1);
mc.AppendText();

为什么窗体上的richTextBox没有添加内容呢?
大虾们指点一下,谢谢!
...全文
520 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunny906 2009-12-21
  • 打赏
  • 举报
回复
谢谢!
结贴!
风龙-3 2009-12-21
  • 打赏
  • 举报
回复
在C#建立类库,UserControl1, 如下
public partial class UserControl1 : UserControl
{
private RichTextBox rtb = null;

public UserControl1()
{
InitializeComponent();
}
public RichTextBox RTBAttribute
{
get
{
return rtb;
}
set
{
rtb = value;
}
}
public void AppendText()
{
rtb.AppendText("Hello");
}
}
在另一测试项目的窗体中,加入richTextBox1;测试如下
private void button1_Click(object sender, EventArgs e)
{
userControl11.RTBAttribute = richTextBox1;
userControl11.AppendText();
}
可以显示
sunny906 2009-12-21
  • 打赏
  • 举报
回复
private delegate void dgAppendText();

MyControl mc=new MyControl(richTextBox1);
dgAppendText dg=new dgAppendText(mc.AppendText);
dg();
改成这样,还是不行
sunny906 2009-12-21
  • 打赏
  • 举报
回复

sunny906 2009-12-21
  • 打赏
  • 举报
回复
对,是.dll
hhc123 2009-12-21
  • 打赏
  • 举报
回复
添加引用啊,是不是.dll啊,
sunny906 2009-12-21
  • 打赏
  • 举报
回复
问题是类库和Form不在同一个项目啊
沉默味道ron 2009-12-21
  • 打赏
  • 举报
回复
委托!
hhc123 2009-12-21
  • 打赏
  • 举报
回复
用委托

111,120

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧