C# 需要一个按钮来打开某些datagridview

C# 需要一个按钮来打开某些datagridview,c#,winforms,datagridview,dataset,C#,Winforms,Datagridview,Dataset,嘿,伙计们,我需要一个按钮来打开datagrid视图中的某个数据库。它是否有可能在同一个表单上显示,而不是指向一个新表单 这就是我到目前为止所做的 我已经创建了一个包含3个按钮的表单-按钮1、按钮2、按钮3 我有三个数据库,并为每个数据库创建了数据集——让我们称它们为datasat1、dataset2和dataset3 现在我知道我可以在数据网格视图中将数据集拖到页面上。但我不想只在页面上写一个。我希望它根据单击的按钮进行更改并显示数据集。因此,当单击按钮1时,必须显示数据集1,依此类推 很抱歉

嘿,伙计们,我需要一个按钮来打开datagrid视图中的某个数据库。它是否有可能在同一个表单上显示,而不是指向一个新表单

这就是我到目前为止所做的

我已经创建了一个包含3个按钮的表单-按钮1、按钮2、按钮3

我有三个数据库,并为每个数据库创建了数据集——让我们称它们为datasat1、dataset2和dataset3

现在我知道我可以在数据网格视图中将数据集拖到页面上。但我不想只在页面上写一个。我希望它根据单击的按钮进行更改并显示数据集。因此,当单击按钮1时,必须显示数据集1,依此类推

很抱歉,这是新的

哦,这就是我想出来的,尽管我认为这可能是非常错误的

    private void button1_Click(object sender, EventArgs e)
    {
        this.database1DataGridView.Visible = true;
    }

    private void button2_Click(object sender, EventArgs e)
    {
        this.database2DataGridView.Visible = true;
    }

    private void button3_Click(object sender, EventArgs e)
    {
        this.database3DataGridView.Visible = true;
    }        

每个dataviewgrid的原始可见性都设置为false,在按钮单击处理程序中更改“DataGridView”的“数据源”

button1.Click += button1_Click    

void (object sender, EventArgs e)
{
    _yourDataGridView.DataSource = dataset1;
    _yourDataGridView.DataMember = "TableName"; // table you want to show
}   

也许您可以尝试在button click事件中将数据集绑定到gridview数据源中,就像古鲁·斯特隆所说的那样

大概是这样的:

protected void Button1_Click(object sender, EventArgs e)
{
    using (DataTable dt1 = getDataTable1())
    {
        using (DataSet ds1 = new DataSet())
        {
            ds1.Tables.Add(dt1);
            YourDataGridView.DataSourceID = null;
            YourDataGridView.DataSource = ds1.Tables[0].DefaultView;
            YourDataGridView.DataBind();
        }
    }
}
或者,如果您可以稍微修改一下代码:

private void button1_Click(object sender, EventArgs e)
{
    database1DataGridView.Visible = true;
    database2DataGridView.Visible = false;
    database3DataGridView.Visible = false;
}

private void button2_Click(object sender, EventArgs e)
{
    database2DataGridView.Visible = true;
    database1DataGridView.Visible = false;
    database3DataGridView.Visible = false;
}

private void button3_Click(object sender, EventArgs e)
{
    database3DataGridView.Visible = true;
    database1DataGridView.Visible = false;
    database2DataGridView.Visible = false;
} 

希望有帮助。

尝试使用我的建议确定我仍然缺少一些错误名称“\u yourDataGridView”在当前上下文中不存在这是我遇到的错误,我只能在元数据中看到它,如果我说转到定义它的示例名称。使用DataGridView名称,如下所示。database1DataGridView当然是所有3个按钮单击处理程序中的同一个,您需要使用表名而不是TableName,或者写入_yourDataGridViewName.DataSource=dataset1.Tables[0];没有设置数据成员是的,哈哈,我是新的,但不是新的。我确实用我特定的datagrid视图名称替换了_yourDataGridView。但我还没有贴上它或其他什么。我应该吗?