0
public partial class Form7 : Form
{
    private MySqlDataAdapter da;
    private MySqlConnection conn;
    BindingSource bsource = new BindingSource();
    DataSet ds = null;
    string sql; 

    public Form7()
    {
        InitializeComponent();
    }

    private void LoadData()
    {
        string connectionString = "Data Source=localhost;database=d1; uid=root; password=123;port=3307;";
        conn = new MySqlConnection(connectionString);
        sql = "SELECT Name, Address, id, Status FROM t1";

        da = new MySqlDataAdapter(sql, conn);
        conn.Open();
        ds = new DataSet();
        MySqlCommandBuilder commandBuilder = new MySqlCommandBuilder(da);
        da.Fill(ds, "Orders");
        bsource.DataSource = ds.Tables["Orders"];
        dgv.DataSource = bsource;
    }
}

它给了我一个错误调用:

dgv does not exist in the current context

我能做些什么来修复它?我应该使用任何软件包或其他东西吗?

4

3 回答 3

1

从您的代码中,您似乎缺少该dgv对象,例如:private DataGridView dgv = new DataGridView();

请参阅 msdn 的示例部分。

于 2012-11-02T18:08:52.090 回答
0

检查您的标记文件(它可能是文件类型 *.ascx 或 *.aspx)并确保您实际调用了 DataGrid 对象“dgv”。我之前遇到过确切的错误,这是由于对象名称拼写错误造成的。只需将标记文件中的名称复制并粘贴到您的代码文件中,以确保您的拼写正确!

于 2017-10-05T15:16:38.877 回答
-1

这可能是标记文件的问题。如果您在 wpf 窗口中使用带有 datagridview 的 windows 窗体主机,则可能是由于命名空间解析。使用 x:Name 而不是 Name 在 xaml 中为其命名。

于 2020-08-26T11:41:03.557 回答