【问题标题】:Winforms and datagridview reloadWinforms 和 datagridview 重新加载
【发布时间】:2012-03-02 12:01:08
【问题描述】:

我在一个 winform 中有两个 datagridview。当我更改 datagridview1 中的数据时,我需要使用按钮重新加载第二个 datagridview 2。

datagriview1修改--->点击按钮更新--->重新加载datagridview 2。 它不工作,我不知道为什么。

     using System;
        using System.Collections.Generic;
        using System.ComponentModel;
        using System.Data;
        using System.Drawing;
        using System.Linq;
        using System.Text;
        using System.Windows.Forms;
        using System.IO;

        namespace WindowsFormsApplication6
        {
            public partial class Form1 : Form
            {

                DataSet ds = new DataSet();
                DataSet dv = new DataSet();
                public Form1()
                {
                    InitializeComponent();
                    FileStream stream = new FileStream("file.xml",FileMode.Open);
                    ds.ReadXml(stream);
                    stream.Close();
                    dataGridView1.DataSource = ds.Tables[0];
                    FileStream stream1 = new FileStream("file.xml", FileMode.Open);
                    dv.ReadXml(stream1);
                    stream1.Close();
                    dataGridView2.DataSource = dv.Tables[0];

                    //DateTime Today = DateTime.Now;


                }

                private void updateData_Click(object sender, EventArgs e)
                {
                    ds.WriteXml("file.xml");
                    //reload the datagridview 2 after modification intot the datagridview1
dv.reset();                    
FileStream stream1 = new FileStream("file.xml", FileMode.Open);

                    dv.ReadXml(stream1);
                    stream1.Close();
                    dataGridView2.DataSource = dv.Tables[0];
dataGridView2.ResetBindings();
                }
            }
        }

【问题讨论】:

    标签: c# winforms datagridview


    【解决方案1】:

    DataGrid 上有一个 ResetBindings 函数应该可以满足您的需求。

    dataGridView2.ResetBindings();

    【讨论】:

    • 它就在那里……而且从一开始就在那里。 msdn.microsoft.com/en-us/library/…
    • dv.Tables[0] 不是你想要的。您想重置网格视图本身的绑定
    • 我在visual studio 2010下试过了,没有找到ResetBindings()。
    • 我试过了,但没用:ds.WriteXml("file.xml"); //修改后重新加载datagridview 2到datagridview1 dataGridView2.ResetBindings(); // FileStream stream1 = new FileStream("file.xml", FileMode.Open); dv.ReadXml(stream1);流1.关闭(); dataGridView2.DataSource = dv.Tables[0];
    • 我试过这个没用;/ ds.WriteXml("file.xml"); FileStream stream1 = new FileStream("file.xml", FileMode.Open); dv.ReadXml(stream1);流1.关闭(); dataGridView2.DataSource = dv.Tables[0]; dataGridView2.ResetBindings();
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-16
    • 2020-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    相关资源
    最近更新 更多