C# 在一个项目中添加了一个新类,想让新类使用Form1的textbox控件,调试时发现值已传入textbox但显示不出
C#一个项目中,添加了一个心类,假设是A类吧,想让A类使用主窗体也就是Form1的一个控件:textbox,我是这么做的:首先将textbox的属性设为public,然后...
C# 一个项目中,添加了一个心类,假设是A类吧,想让A类使用主窗体也就是Form1的一个控件:textbox,我是这么做的:首先将textbox的属性设为public,然后在新类,也就是A类添加了:Form 1 fm = new Form1() 调用textbox控件时:fm.textBox1.Text = "调试程序"。 好了,问题来了:在F5调试时用断点跟踪发现,textBox1.Text确实已经或得了该值,但是就是不能够显示出来,textBox1上还是空白的,请问这是什么原因???
展开
展开全部
new出来的Form1是不行的
Form1 fm=System.Windows.Forms.Application.OpenForms[0] as Form1;
试试
Form1 fm=System.Windows.Forms.Application.OpenForms[0] as Form1;
试试
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵,我也遇见过这样的问题,原因是窗体被重新实例化了。
textbox的属性设为public 貌似在令一个类中可以直接访问
还有可以 Form1 mf1 = (Form1)this.Owner; mf1.textbox="调试程序"; 实现。
textbox的属性设为public 貌似在令一个类中可以直接访问
还有可以 Form1 mf1 = (Form1)this.Owner; mf1.textbox="调试程序"; 实现。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
好像问题出在new上面,你在A类中new了一个form1那么A类的form1就和你的那个窗体没关系了,他们是不同的对象,如果要textBox1里有值,只能把A类立面的值传到textBox1立面来,比如你在A类定义一个string类型的变量 public static string txt = "调试程序" 然后在form1的加载(事件由你选)里写textBox1.Text = A.txt
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询