有关取上级窗体控件的值

蓝色风影 2006-06-06 11:06:55
如现在FORM1, FORM2
FORM1中有TEXTBOX1, BUTON1
FOMR2中有TEXTBOX1
当TEXTBOX1.TEXT 的值输入"ABC"
BUTON1按下FORM2窗体弹出.
问题:不用公共变量, 怎样得到FORM2中的TEXTBOX1.TEXT=FORM1中的TEXTBOX1.TEXT的值.
VB6就很容易.NET应该怎样呢
...全文
70 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
sniper81 2006-06-06
  • 打赏
  • 举报
回复
不用公共变量,那公共属性可以吧?
public string TextOfA
{
get{ return textbox1.Text;}
}
然后再显示Form2的时候把Form1的实例传进取,就能通过TextOfA属性得到结果。

如果嫌这么做耦合性太强,可以使用事件。
在Form2中,写一个public的方法
public void GetTextOfA(object sender,EventArgs e)
{
TextBox src = sender as TextBox;
if (src == null)
return; //不是TextBox?
string result = src.Text; //得到了Form1中的文本框的值
}
在Form1的Load事件处理方法中:
private Form2 m_Form2;
private void Form1_Load(object sender,EventArgs e)
{
m_Form2=new Form2();
textBox1.TextChanged += new EventHandler(m_Form2.GetTextOfA);
}
代码没有经过测试,不过意思表达的没错。

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧