c# form2里调用form1里的变量

C#我在form1里通过计算得到变量x1的值,然后显示在textbox1中然后通过按钮跳转到了form2,在form2里同样用一个button1,把x1的值显示在form... C#

我在form1里通过计算得到 变量 x1 的值,然后显示在textbox1中

然后通过按钮跳转到了 form2,在form2里 同样用一个 button1 ,把x1的值显示在 form2的 TextBox1里。

问题是在form2里 无法调用x1,怎么把x1设置成全局变量,然后在form2里调用呢。

我是新手,直接上程序,顺便解释一下
你们说的都不行。我要调用form1里所有定义过的变量。怎么才能实现呢
展开
 我来答
百度网友1f1d830
推荐于2017-12-15 · TA获得超过785个赞
知道小有建树答主
回答量:124
采纳率:0%
帮助的人:208万
展开全部
两种方法:
方法1: 全局变量方法:在form1里定义一个全局变量,如: public int u = "";
然后在你调出form2时将s1赋给u ,然后在form2里就能用了
代码如下:
form1里:
form2 f = new form2();
u=s1;
f.ShowDialog();
form2里:
form1 f = new form1();
TextBox1.Text=f.u.toString();
方法2: 给form2构造函数:
这个就直接写代码了:
form2里:

int c=0;
public form2(int s)
{
InitializeComponent();
c=s;
}
然后在你需要的地方写
TextBox1.Text=c.toString();

form1里:

不用做变化
form2 f = new form2(x1);//传参就行了~!
f.ShowDialog();
郏鸿祯C6
2010-06-21 · TA获得超过4548个赞
知道小有建树答主
回答量:1601
采纳率:50%
帮助的人:1184万
展开全部
我不知道你是用什么方法实现调出form2的
如果是通过Form2 form2=new Form2();然后再用ShowDialog()方法调出的话,就十分简单了。
进入Form2的代码编辑窗口,
设置一个全局变量:
string x1;
把Form2的构造函数改写成:
public Form2(string _x1)
{
InitializeComponent();
x1=_x1;
}
然后回到Form1的代码编辑窗口:
Form2 form2=new Form2(x1);/*此处在实例化Form2的时候,调用了Form2的构造函数,
而x1变量也就自然而然地传到Form2中去了,然后你想
怎么用都行,呵呵*/
希望可以帮到你,如有疑问可以加我184318451
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kenlgkl
2010-06-22
知道答主
回答量:24
采纳率:0%
帮助的人:0
展开全部
设置form1父窗体还有form2子窗体,子窗体去调用父窗体的变量
或者设置一下form2的构造函数
public form(string x)
{
InitializeComponent();
textBox.text=x;
}

form1里面调用
按钮事件{
form2 f = new form2(x1);
f.ShowDialog();
}

或者将x1设置为static public int x1;类型,给他赋值
在from2中直接from1.x1调用它也行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
NotigerKuiKui
2010-06-21 · TA获得超过2802个赞
知道大有可为答主
回答量:1592
采纳率:76%
帮助的人:444万
展开全部
要么要声明x1为public,要么在forrm2里面调用这样form1.x1这样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
772741080
2010-06-21
知道答主
回答量:32
采纳率:0%
帮助的人:8.3万
展开全部
自己想
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式