一个(winform)窗体如何调用另一个窗体中的函数 form1生成form2,form2生成form3.现在要在form3中调用form1中的一个函数funx(int a)怎么做? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 晕了 form3中建个form1的实例form1 form1 = new form1();form1.funx(int ""); 如果该方法是实例方法,则form3里一定要有form1的引用,可以通过构造函数或者属性把form1的引用传过来(先传到form2 再到form3)如果是静态方法就简单多了,Form1.fun(); form a=new form();a.funx() 如果只是使一个方法,不多最先的form1修改:form1 form1 = new form1();form1.funx(int "");form1.Dispose();//释放;如果你要修该最先的form1,得用其他方法;如:1.在form2中添加属性和字段Form1 f = null;gForm1{set{f=value}} 2.form1在打开form2之前对f赋值;Form2 form2 = new Form2();form2.gForm1 = this;form2.Show();3.在form3中添加属性和字段;Form1 f = null;hForm1{set{f=value}} 4.fom2中打开form3同样操作;Form3 form3 = new Form3 ();Form3 .hForm1 = f;Form3 .Show();5.最后你就可以修改已经带开的form1了; 在Form1里面对自己做静态public static Form1 frm = new Form1(),在Form3就可以通过Form1.frm.fun()去调用了! 一个是使用静态方法的调用,也是做简单的调用直接:Form1.Fun();实例方法则要应用Form1的实例,form1 form1 = new form1();form1.funx(int "");form1.Dispose();//释放; TO:xiao_p(曼沙珠华) 是想要调用原来的Form1实例(且这个函数会改Form1实例上的一些东西)leirenqi(混混) '用事件委托方式',怎么用的呢 _jfeng(静心) 以下代码在form2的什么地方写呢Form1 f = null;gForm1{set{f=value}} 我在public Form2() { // // Windows 窗体设计器支持所必需的 // InitializeComponent(); // // TODO: 在 InitializeComponent 调用后添加任何构造函数代码 // }的下面写入的结果在set {f = value;} 行报错:应输入 ; public static Form1 form = new Form1(),Form1.form.fun)还要注意一定要把你调用的函数和变量改为PUBLIC!!! //全局变量private Form1 f = null;public gForm1{set{f=value};} WPF中数据绑定与ObservableCollection<T>应用问题 C# Socket嗅探网络数据包问题 c#中打洞问题 怎样得到从某一端口侦听到的消息的来源? 问一个很弱的问题,多态的问题! 求一个城市连动的例子,给出马上揭贴(javaScript实现的) ■怎么对自定义控件的数组属性添加设计时支持?■ 请教如何给软件做皮肤 mssql 存储过程查询数据超时,请赐教!谢谢!! 如何获得文本框插入符位置? 请问怎样能使winform窗体的大小固定住,不能调整其大小! 关于打印方面的问题
form1 form1 = new form1();
form1.funx(int "");
如果是静态方法就简单多了,Form1.fun();
a.funx()
form1 form1 = new form1();
form1.funx(int "");
form1.Dispose();//释放;如果你要修该最先的form1,得用其他方法;
如:
1.在form2中添加属性和字段
Form1 f = null;
gForm1
{
set{f=value}
}
2.form1在打开form2之前对f赋值;
Form2 form2 = new Form2();
form2.gForm1 = this;
form2.Show();3.在form3中添加属性和字段;
Form1 f = null;
hForm1
{
set{f=value}
} 4.fom2中打开form3同样操作;Form3 form3 = new Form3 ();
Form3 .hForm1 = f;
Form3 .Show();5.最后你就可以修改已经带开的form1了;
实例方法则要应用Form1的实例,
form1 form1 = new form1();
form1.funx(int "");
form1.Dispose();//释放;
xiao_p(曼沙珠华) 是想要调用原来的Form1实例(且这个函数会改Form1实例上的一些东西)
leirenqi(混混) '用事件委托方式',怎么用的呢
_jfeng(静心) 以下代码在form2的什么地方写呢
Form1 f = null;
gForm1
{
set{f=value}
}
我在public Form2()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent(); //
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}
的下面写入的结果在
set {f = value;} 行报错:应输入 ;
Form1.form.fun)还要注意一定要把你调用的函数和变量改为PUBLIC!!!
private Form1 f = null;
public gForm1
{
set{f=value};
}