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上还是空白的,请问这是什么原因??? 展开
 我来答
最后的仙人
2012-09-03 · TA获得超过1961个赞
知道大有可为答主
回答量:1509
采纳率:0%
帮助的人:1396万
展开全部
new出来的Form1是不行的
Form1 fm=System.Windows.Forms.Application.OpenForms[0] as Form1;
试试
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
FlyBoyMe
2012-09-09
知道答主
回答量:74
采纳率:0%
帮助的人:28.7万
展开全部
呵呵,我也遇见过这样的问题,原因是窗体被重新实例化了。
textbox的属性设为public 貌似在令一个类中可以直接访问

还有可以 Form1 mf1 = (Form1)this.Owner; mf1.textbox="调试程序"; 实现。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangda146
2012-09-03 · TA获得超过1160个赞
知道小有建树答主
回答量:836
采纳率:0%
帮助的人:575万
展开全部
好像问题出在new上面,你在A类中new了一个form1那么A类的form1就和你的那个窗体没关系了,他们是不同的对象,如果要textBox1里有值,只能把A类立面的值传到textBox1立面来,比如你在A类定义一个string类型的变量 public static string txt = "调试程序" 然后在form1的加载(事件由你选)里写textBox1.Text = A.txt
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式