如何在主窗体中给另一个窗体里的控件赋值,然后再显示这个窗体?

Ryan裤子 2003-09-29 03:21:59
如题
...全文
244 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
honghaozi 2003-09-30
  • 打赏
  • 举报
回复
如果你要传的东西很简单,可以作为构造函数的参数传进去,在构造函数里赋值
假定你知道怎么改构造函数。
烤火的鱼 2003-09-29
  • 打赏
  • 举报
回复
很简单,在“属性”窗口中将该控件的modifier属性设置public就可以直接引用了。或者按楼上的办法,直接在cs窗口中修改
Reeezak 2003-09-29
  • 打赏
  • 举报
回复
1. 你把子窗体需要被主窗体更改属性的控件改成public

2. 必须先新建实例,否则无法对其他窗体的控件或其他的任何东西进行操作
subForm sf = new subForm();

3. 然后在主窗体中,
sf.那个需要控制的控件.需要控制的属性 = 参数;(参数应该对应属性的数据类型)

4. sf.Show();//sf.ShowDialog()也行
sea2sea 2003-09-29
  • 打赏
  • 举报
回复
两个窗体间传递参数的问题:
设主窗体为parentForm,子窗体为childForm。要传递一个自定义类型的参数(设自定义的类型为MyObj).
父窗体里面:
MyObj obj = new MyObj();
对 obj 赋值。
childForm frm = new childForm();
frm.tag = obj;
frm.show();

子窗体:
MyObj obj = new MyObj();
obj = (MyObj)this.tag;
obj里面就有你想要的东西了。
JoeM 2003-09-29
  • 打赏
  • 举报
回复
为了数据隐藏的目的, 最好在目标窗体中添加一个public的方法来接受主窗体传入的参数并设置相应的控件值.
example如下
目标窗体代码(targetForm):

public void SetCtrlVal(string s)
{
this.label1.Text=s;
}
主窗体代码(mainForm):
targetForm frm = new targetForm();
frm.SetCtrlVal("Hello world");
frm.Show();
dragon515 2003-09-29
  • 打赏
  • 举报
回复
TOP
ETstudio 2003-09-29
  • 打赏
  • 举报
回复
把那个控件设置为public
Form1 ff=new Form1();
ff.控件名.属性=;
ff.show();

110,535

社区成员

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

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

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