C#winform 程序 有两个窗口里的数据怎么实现即时更新

有Datagirdview或者textbox内的数据在form2窗口内修改后,返回到form1窗口同时怎么更新数据的显示。已调用更新数据方法,没用!... 有Datagirdview 或者textbox内的数据在form2窗口内修改后,返回到form1窗口同时怎么更新数据的显示。已调用更新数据方法,没用! 展开
 我来答
freeeeeewind
推荐于2017-11-26 · TA获得超过1万个赞
知道大有可为答主
回答量:3227
采纳率:94%
帮助的人:1291万
展开全部

最简单的方法:

在Form1的类中添加一个方法。Form1上有dataGirdview 或者textBox

 public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        
        //添加一个方法,用于更新textBox1
        public void UpdateTextBox(string newData)
        {
            this.textBox1.Text = newData
        }
        
        //点击按钮,显示Form2窗口
        private void buttonShowForm2_Click(object sender, EventArgs e)
        {
            //用新的构造函数(见下面的Form2类),创建Form2实例
             Form2 form2 = new Form2(this);
             form2.Show();
        }
        
        //其余代码略……
    }

在Form2中,添加一个新的构造函数和一个新的方法

 public partial class Form2 : Form
    {
        private Form1  _form1;

        public Form2()
        {
            InitializeComponent();
        }
        
        //添加一个构造函数
        public Form2(Form1 form): this()
        {  
            _form1 = form;
        }
        
        //当更新了数据后,调用此方法,将数据传回Form1并更新显示
        private void UpdateFrom1( string newData)
        {
            _from1.UpdateTextBox(string newData);
        }
        
        //其余代码略……
}
匿名用户
2014-03-04
展开全部
有没有人知道啊?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-03-04
展开全部
数据被缓存了吧?
更多追问追答
追问
不明白你的意思啊/?能否详细点啊!?我是菜鸟!
追答
第一次查询的数据被缓存到了本地,当你修改数据后是在服务器里修改!所以当你调用方法的时候,程序自然就调用被缓存的本地数据,而不是已经修改过的服务器数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
踢脚MG
2014-03-04 · TA获得超过683个赞
知道小有建树答主
回答量:598
采纳率:40%
帮助的人:218万
展开全部
更新后重新绑定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式