如何在类里面声明一个picturebox,或者声明一个button可以在form里用

foutcast 2008-04-02 08:23:09
我现在是这样写的
在class1里面
public class Class1
{
public string st;
public Button Citybutton;
public string showst()
{
return st;
}
public Class1()
{
Citybutton = new Button();
}

public void Citybutton_Click(object sender, EventArgs e)
{
st = "wertyu";
}

在FORM里面拖一个button2,然后
cla.Citybutton = this.button2;
那么我现在按了button2,是不是能执行class1里面的Citybutton_Click?
如果不能,这个类里面应该要怎么写呢,谢谢啦

...全文
77 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
foutcast 2008-04-02
  • 打赏
  • 举报
回复
谢谢
搞定了
dancingbit 2008-04-02
  • 打赏
  • 举报
回复

public Button Citybutton
{
get
{
return citybutton;
}
set
{
citybutton=value;
citybutton.Click+=new EventHandler(this.CityButton_Click);
}
}
foutcast 2008-04-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 dancingbit 的回复:]
把字段定义为public不是一种好的做法。可以定义成私有成员,再定义对应属性,这样,甚至还可以在set方法中自动为这个Button加上Click事件处理方法。
[/Quote]

你是不是说在class1里写成
private Button citybutton;
public Button Citybutton
{
get
{
return citybutton;
}
set
{
}
}
是这样吗,你说的在set里加上click方法要怎么写呢,谢谢
foutcast 2008-04-02
  • 打赏
  • 举报
回复
加了这一句是不是就不用在form里面写
cla.Citybutton = this.button2;
这句了
dancingbit 2008-04-02
  • 打赏
  • 举报
回复
把字段定义为public不是一种好的做法。可以定义成私有成员,再定义对应属性,这样,甚至还可以在set方法中自动为这个Button加上Click事件处理方法。
dancingbit 2008-04-02
  • 打赏
  • 举报
回复
肯定不能。
在Form2中某个合适的地方button2.Click+=new EventHandler(cla.CityButton_Click);

111,096

社区成员

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

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

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