C#的问题,知道的兄弟帮忙~

来源:百度知道 编辑:UC知道 时间:2024/05/21 13:03:07
我初学的~
我新建了两个窗体,
A窗体里有一个按钮button1,B窗体里有一个label1
我要按这个按钮的时候,label里显示"天气很好“,怎么做?
知道的请告诉我~尽量详细些,谢谢啦!

窗体内部的组件是私有的,所以不能直接访问。
关键点是 让A得到B的Label。

你可以在A窗体添加一个公共方法和一个成员变量来保存B窗体的Label。
例如:
void SetLabelOfFormB(Lable lab)
{
m_Lab = lab;
}
m_Lab是窗体A的成员。

然后在B窗体的创建事件中,调用A窗体的此方法,把B窗体的label1传递给窗体A。

在窗体A的button事件中使用:
m_Lab = "天气很好";

做两个窗体,把B窗体里label1 的Text属性改成“天气很好”
然后再第一个窗体的按钮button1的事件

Form2 f = new Form2();
f.Show();

做两个窗体,
在B窗体的formload事件中把Label1.text设为"天气很好"
然后再A窗体的按钮button1的事件写
Form2 f = new Form2();
f.Show();

使用委托来做,用A的BUTTON的事件触发事件,而事件的实现在B中就可以了。

在A窗体的button_click单击事件中打开B...
A a=new A();
a.show();
在B窗体的form_load窗口运行事件中让
label.text="天气很好";
不知道你有没参数要从A传递到B...所以就在一运行B窗体就触发事件...

一是用委托,这个推荐
二比较土,就是把B的方法设成public,由A窗体去调用