急急急!!!C#高手请帮忙!窗体的简单问题

mayuliuze 2010-12-22 09:13:08
请问大家,我建立了包括4个form的这样一个窗体,在form2里有一个textbox1控件,里面有用户输入的值,而我在form4的lable_click事件中声明了一个double变量a,这个变量的值就是form2里textbox1的值,请问我要写怎样的赋值语句,才能把textbox的值传递给变量a 比如a=form2.textbox1.Text ? 请指教! 这相当于从不同的using system中调用值呢,请问有什么调用规则吗
...全文
85 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhq_152718 2010-12-22
  • 打赏
  • 举报
回复
5楼的方案很好,前两个我都用过,委托和事件没怎么用过,学习。我也是菜鸟
闲着吃菜 2010-12-22
  • 打赏
  • 举报
回复
窗体之间的传值方式有好多种的,直接一直的就是楼上讲的实例化窗体 然后获取控件值,但如果两个窗体属于不同的文件夹的话要加上using 引用 比如你要获取A窗体的值,A窗体放在 FromAFile文件夹下,则你的B窗体就要加上using FromAFile 才能调用A窗体。
窗体间传值还可以通过委托,定义公共类,定义一个static类型来传值。
定义公共类的方法:你在A窗体的时候把textbox控件值set到定义的公共publicA里面的一个属性里面然后B窗体Get就可以获取到。比如:publicA 里面 private string _atext;
public string atext
{
set {_atext=value;}
get {return _atext;}
}
那么你在需要调用窗体值里面访问这个属性就可以了
static方法: 在A窗体里面 定义 public static strtext="";然后赋值。在B窗体里面直接就可以引用
还有一种很好的方法是通过委托 和事件去处理,个人建议这个方案最好
mayuliuze 2010-12-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 laowang134 的回复:]
form2 f=new form2();
double a= f.textbox1.text;
ps:貌似是这样。。好长时间没用了。。。
[/Quote]
谢谢你这么耐心的帮我
laowang134 2010-12-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 laowang134 的回复:]
引用 1 楼 laowang134 的回复:
form2 f=new form2();
double a= f.textbox1.text;
ps:貌似是这样。。好长时间没用了。。。

貌似还需要将form2中textbox1的权限改为public,默认为private。。
[/Quote]
Modefiers的属性由private变为public。。
laowang134 2010-12-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 laowang134 的回复:]
form2 f=new form2();
double a= f.textbox1.text;
ps:貌似是这样。。好长时间没用了。。。
[/Quote]
貌似还需要将form2中textbox1的权限改为public,默认为private。。
laowang134 2010-12-22
  • 打赏
  • 举报
回复
form2 f=new form2();
double a= f.textbox1.text;
ps:貌似是这样。。好长时间没用了。。。

110,539

社区成员

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

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

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