C#如何在form1中显示Form2中的变量?
4个回答
展开全部
1.你可以定义静态变量,例如public
static
form1
currentform1;
当你的form1启动后设置这个静态变量为this。则其他地方可以通过这个静态变量访问到当前form1对象,多个的话就用数组,队列等。
2。其他n多增内聚,降低耦合的方法,比如在form2中保存一个form1的引用,启动时候设置,或是添加一个公共的类保存各自的引用等等方法。
3.通过遍历application.openforms找到类型为form1的对象
static
form1
currentform1;
当你的form1启动后设置这个静态变量为this。则其他地方可以通过这个静态变量访问到当前form1对象,多个的话就用数组,队列等。
2。其他n多增内聚,降低耦合的方法,比如在form2中保存一个form1的引用,启动时候设置,或是添加一个公共的类保存各自的引用等等方法。
3.通过遍历application.openforms找到类型为form1的对象
展开全部
button1_Click
这个方法里面写
{
Form2
fm2
=
new
Form2();
fm2.Getnum();
//不是Form2.Getnum;
listBox1.Items.Add(fm2.textBox1.Text);}
Form2这样写
public
void
Getnum(
)
{
int
num
=
0;
if
(num
<
10)
//用if
for
等你自己的方法活动num的值
{
num++;
//得到num=1
}
textBox1.Text
=
num.ToString();
//
把num放到一个容器里传值比较容易,我在Form加了个textBbox,
主要如果用控件,把控件的属性Modifiers
值
从
Private
改成Public
}
经过测试可用,你可以根据自己的需求参考代码。
这个方法里面写
{
Form2
fm2
=
new
Form2();
fm2.Getnum();
//不是Form2.Getnum;
listBox1.Items.Add(fm2.textBox1.Text);}
Form2这样写
public
void
Getnum(
)
{
int
num
=
0;
if
(num
<
10)
//用if
for
等你自己的方法活动num的值
{
num++;
//得到num=1
}
textBox1.Text
=
num.ToString();
//
把num放到一个容器里传值比较容易,我在Form加了个textBbox,
主要如果用控件,把控件的属性Modifiers
值
从
Private
改成Public
}
经过测试可用,你可以根据自己的需求参考代码。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C#
子窗体中调用父窗体中的方法(或多窗体之间方法调用)
http://www.csframework.com/archive/2/arc-2-20110805-1771.htm
通过反射技术创建窗体实例然后给控件赋值(C#)
http://www.csframework.com/archive/2/arc-2-20110509-1447.htm
子窗体中调用父窗体中的方法(或多窗体之间方法调用)
http://www.csframework.com/archive/2/arc-2-20110805-1771.htm
通过反射技术创建窗体实例然后给控件赋值(C#)
http://www.csframework.com/archive/2/arc-2-20110509-1447.htm
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这太简单了吧,不会想事,返回int不就行了
public
int
Getnum(){num++;}
在Form1定义全局变量int
n;
然后n=form2.Getnum();
不是吗,新手阿
public
int
Getnum(){num++;}
在Form1定义全局变量int
n;
然后n=form2.Getnum();
不是吗,新手阿
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询