2017-05-25 57 views
1
SqlConnection cone = new SqlConnection(Properties.Settings.Default.cnx); 

void viewdata() { 
    SqlDataAdapter adap = new SqlDataAdapter("select movie_name,movie_date,movie_desc from movies", cone); 

    DataTable dt = new DataTable(); 
    adap.Fill(dt); 

    dataGridView1.DataSource = dt; 
} 

我的表中有4行,所以我注意到它返回5个空的DataGrid行,即使我确信数据库中弥漫着数据从数据库返回检索空而不是值增加

+0

'AutoGenerateColumns = true'? –

+0

如果你正在使用ASP.NET(web),那么你需要在你的dataGridView1.DataSource = dt之后有一个'dataGridView1.DataBind();'**! –

+0

AutoGenerateColumns = true在这里不会改变任何内容https://i.imgur.com/gpFxAe7.png – Megumin

回答

1
void viewdata() { 
    SqlDataAdapter adap = new SqlDataAdapter("select movie_name as movie,movie_date as date,movie_desc as desc from movies", cone); 
    DataTable dt = new DataTable(); 
    adap.Fill(dt); 
    dataGridView1.DataSource = dt; 
    dataGridView1.DataBind(); 
} 

,并设置到true

+0

这不会改变任何东西这里是一个screencap https://i.imgur.com/gpFxAe7.png – Megumin

+0

你可以滚动水平滚动条到右边吗?并确保网格的AutoGenerateColumns属性为true? –

0

手动加油吧电网的AutoGenerateColumns财产工作,得到了变量,而不是空值

SqlCommand cmd = new SqlCommand("SELECT nom_cinema,addresse,heur_ouverture,heur_fermeture FROM [dbo].[cinema]", con); 

       SqlDataReader cv = cmd.ExecuteReader(); 



       while (cv.Read()) 
       { 

        dataGridView1.Rows.Add(cv.GetValue(0).ToString(), cv.GetValue(1).ToString(), cv.GetValue(2).ToString(), cv.GetValue(3).ToString()); 

       }