正在从以单独表单创建的数据集中填充DataGridView

本文关键字:数据集 数据 集中 填充 DataGridView 创建 单独 表单 | 更新日期: 2023-09-27 18:01:05

我有一个数据集,它正在一个称为form1的windows窗体中创建。我希望这个数据集填充一个DataGridView,它存在于一个单独的表单中,我们称之为form2。

我已经尝试过这样设置数据源,但由于上下文不正确,它不起作用。

newShipmentGrid.DataSource = dataToWatch;

具体来说,我得到的错误是"名称newShipmentGrid在当前上下文中不存在"。这是一个Windows页面表单应用程序。

正在从以单独表单创建的数据集中填充DataGridView

这里是我的一些旧代码中的一个非常简单的Windows窗体应用程序实现。构造函数将调用过程(另一种形式(中的数据集作为唯一参数,将数据集成员设置为该参数的值,并使用方法"FillDataGrid"填充数据集。希望这能帮到你。

public partial class HistForm : Form
{
    DataSet data;
    public HistForm(DataSet ds)
    {
        data = ds;
        InitializeComponent();
        FillDataGrid();            
    }
    private void FillDataGrid()
    {
        dataGridView1.DataSource = data.Tables[0];
    }
}

此表单的调用方法:

private void btnHist_Click(object sender, EventArgs e)
    {
        DataSet tempDataSet = new DataSet();
        tempDataSet = userData;
        tempDataSet.Tables[0].Columns.RemoveAt(1); //remove columns 0 and 1 for display purposes
        tempDataSet.Tables[0].Columns.RemoveAt(0);
        HistForm hForm = new HistForm(tempDataSet);
        hForm.Show();
    }

您必须将变量传递到第二个表单中,然后在页面加载事件中填充网格。

这里有一个很好的链接:

http://msdn.microsoft.com/en-us/library/6c3yckfw(v=vs.100(.aspx