c# winform datagridview内容在不同窗体间传输的问题

窗体1Form_score,是一个弹出窗体,其中有一datagridview1,如下图:窗体2show_form,是一个用于显示的窗体,其中有一datagridview2... 窗体1 Form_score,是一个弹出窗体,其中有一datagridview1,如下图:

窗体2 show_form,是一个用于显示的窗体,其中有一datagridview2。
可否将窗体1中的datagridview作为一个参数,
通过窗体1中的“预览”按键,整体传输到窗体2的datagridviw中?

必须通过窗体1中的按键来控制传输。

新手菜鸟一枚 从未完整系统学习c# 零零碎碎学习中 求各位大神指点!
展开
 我来答
内裤最大功能
推荐于2016-03-09 · TA获得超过3106个赞
知道大有可为答主
回答量:3202
采纳率:79%
帮助的人:497万
展开全部

在Form1里定义一个函数,该函数返回一个DataTable对象或一个DataSet对象。

Form2:
    public  DataTable dt = new DataTable();
    public Form2()
    {
       InitializeComponent();
       this.dataGridView1.DataSource = dt;
    }
    
Form1:
        public DataTable Getdata()
        {
            DataTable dt=new DataTable ();
          ....//这里你自己给dt填充数据,可从数据源获取,也可从datagridview上获取.因为平时是通过DataTable或DataSet给datagridview绑定数据源。
            return dt;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Form2 f2 = new Form2();
            Form1 f1 = new Form1();
            f2.dt = f1.Getdata();
        }
追问
给dt填充数据,从form1的datagridview上获取
我写的是:
DataTable dt = form1.DataSource as DataTable;

这样写不对么?
追答
可以的吧。不过你原先datagridview绑定的数据源就必须是一个DataTable,不然报错的。

但既然原先绑定的是DataTable,那你直接用这个DataTable就可以了。
dataGridView.DataSource = dt;
DataTable dt2 = dt;//这样不就可以了吗
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式