3
mySqlCnnection.Open();
 string list = "select * from login";
 MySqlDataAdapter dataadapter = new MySqlDataAdapter(list, mySqlCnnection);
 DataSet ds = new DataSet();
 dataadapter.Fill(ds, "login");
 dataGridView1.DataSource =ds.Tables[0];

我想在 datagridview 中显示整个登录表数据,但得到一个空的小部件?有人可以吗?

4

6 回答 6

1

您在哪里使用此代码。你在哪个上面使用它?在 on_load 事件上尝试一下。使用默认视图,然后使用 DataBind() 方法绑定数据。

dataGridView1.DataSource =ds.Tables[0].DefaultView;

dataGridView1.DataBind();

于 2012-09-09T18:51:17.680 回答
1

DataBind()分配数据源后调用。

于 2012-09-09T17:56:59.043 回答
1

尝试使用 DataTable 而不是使用 DataSet 来填充数据。或者检查你的 sql 连接。

于 2012-09-09T17:59:26.217 回答
0

你的代码:

    mySqlCnnection.Open();
    string list = "select * from login";
    MySqlDataAdapter dataadapter = new MySqlDataAdapter(list, mySqlCnnection);
    DataSet ds = new DataSet();
    dataadapter.Fill(ds, "login");
    dataGridView1.DataSource =ds.Tables[0];

在下一行...

dataGridView1.Databind();

虽然丑。

于 2012-09-09T18:55:59.617 回答
0

尝试使用绑定源作为数据网格的数据源。

var bindingSource = new System.Windows.Forms.BindingSource();
bindingSource.DataSource = ds.Tables[0];
dataGridView1.DataSource = bindingSource;
于 2012-09-09T19:00:01.107 回答
-1
string list = "select * from login";
SqlCommand command = new SqlCommand(list , db.connect());

SqlDataReader reader = command.ExecuteReader();
DataTable dt = new DataTable();
dt.Load(reader);
dataGridView1.DataSource=dt;
于 2017-11-27T14:44:10.143 回答