| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1696 人关注过本帖
标题:windows Form两窗体数据传递
只看楼主 加入收藏
yuyue3
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-10-27
收藏
 问题点数:0 回复次数:6 
windows Form两窗体数据传递
首先当单击form1的button1按钮时能出现第二个窗体,然后在form2的Textbox1中输入Text并单击form2的button1时,使Textbox1中的Text能够在form1的button1的Text属性中显示出来,同时关闭form2。我是在VS上做的,不能实现上述全部功能。大家帮忙看看我的有什么问题?以下是一些重要代码。多谢!
public System.Windows.Forms.Button button1;
public System.Windows.Forms.TextBox textBox1;
private void button1_Click(object sender, System.EventArgs e)
{
   Form2 form2 = new Form2();
   form2.Show();
}
private void button1_Click(object sender, System.EventArgs e)
{
    Form1 form1 = new Form1();
    form1.button1.Text = this.textBox1.Text;
    this.Close();
}
搜索更多相关主题的帖子: windows Form 窗体 数据 
2008-11-01 20:11
shmilylee
Rank: 2
来 自:江苏扬州蹩脚小公司
等 级:论坛游民
威 望:2
帖 子:242
专家分:22
注 册:2007-7-6
收藏
得分:0 
要在form2中操作form1,可以把form1当成一个参数传递过来
在form2中设一个属性,用来接收from1对象,并且要把form1中需要操作的控件公开出来,也就是修改Modifiers属性
以下是简单实例代码
Form1
程序代码:
        private void button1_Click(object sender, EventArgs e)
        {
            Form2 form2 = new Form2();
            form2._form = this;
            form2.Show();
        }


Form2
程序代码:
        public Form1 _form { get; set; }

        private void button1_Click(object sender, EventArgs e)
        {
            _form.button1.Text = "测试!";
            this.Close();
        }


太可恶了,居然不能超过100个字符!
这区区100个又怎么能概括我平凡而又伟大的一生!
2008-11-01 20:25
shmilylee
Rank: 2
来 自:江苏扬州蹩脚小公司
等 级:论坛游民
威 望:2
帖 子:242
专家分:22
注 册:2007-7-6
收藏
得分:0 
Form1 form1 = new Form1();
这句是你的错误所在,你这里new了一下,其实你new的这个对象并不是你刚才打开的那个form1了
你要做的就是操作你刚才打开的那个对象,你说不用属性也可以啊,重载构造函数也是可以

在form2里写个private Form1 form1;
把你的form2的构造函数改一下增加一个参数
public Form2(Form1 form)

   //界面构造函数不管
   //加一句
   this.form1 = form;

这样form2的私有函数就存储了刚才的form1对象了,直接操作就可以了!
收到的鲜花
  • yuyue32008-11-13 15:24 送鲜花  2朵   附言:我很赞同


太可恶了,居然不能超过100个字符!
这区区100个又怎么能概括我平凡而又伟大的一生!
2008-11-02 12:27
yuyue3
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-10-27
收藏
得分:0 
一语惊醒梦中人!我已经知道我错误的原因了!多谢!
2008-11-02 15:00
HE0401
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-11-5
收藏
得分:0 
谢谢
谢谢
2008-11-05 23:51
vxbb
Rank: 6Rank: 6
等 级:侠之大者
帖 子:163
专家分:440
注 册:2008-8-18
收藏
得分:0 
回复 1# 的帖子
属性、委托、事件、接口……都可以实现哦
刚好写了作业的。

附件在帖子  https://bbs.bccn.net/thread-242240-1-1.html   发了的。

QQ:491697374  Mail:vxbb@
2008-11-06 02:05
FlyBee
Rank: 1
来 自:云南玉溪
等 级:新手上路
帖 子:113
专家分:0
注 册:2007-12-11
收藏
得分:0 
1. new 的时候把参数带进去
2. 打开窗体的时候接收传过来的参数
3.对接收过来的参数进行操作
2008-11-06 14:58
快速回复:windows Form两窗体数据传递
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012452 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved