2014-06-07 21 views
0

我有一个我的dgv(C#)的问题,实际上我无法在前5个ligne中显示表“fichier”这是表的长度)。我从dgv的另一端得到结果(当我放置光标时,就像有一个double的dgv =>前五行是空的,但当我移动光标时是另一侧数据显示)。我不知道问题出在哪里。 这是我的代码(加载窗体时表应出现):我无法在dgv中显示我的数据库表(在前5行)

enter image description here

using System; 
using System.Data; 
using System.Windows.Forms; 
using System.Data.SqlClient; 

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 

SqlConnection con; 
SqlDataAdapter dr; 
DataSet ds = new DataSet(); 
string pat, req; 

     public Form2() 
{ 
      try{ 
    pat = "Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Documents and Settings\\Administrateur\\Bureau\\Copie de WindowsFormsApplication1\\WindowsFormsApplication1\\AppData\\Main.mdf;Integrated Security=True;User Instance=True"; 
    req = "SELECT * FROM fichier"; 
    con = new SqlConnection(pat); 
    con.Open(); 
    dr = new SqlDataAdapter(req, con); 
    dr.Fill(ds, "fichier"); 
      } 
      catch (Exception e) { MessageBox.Show("database not find", e.Message); } 

      InitializeComponent(); 
      panel2.Hide(); 
      affich(); 

     } 

     private void affich() 
     { 

      // MessageBox.Show(""+sTable.Rows.Count); //the result is 5 
      // MessageBox.Show(""+sTable.Rows[0][0].ToString()); //the result is 11 
      dataGridView1.DataSource = ds.Tables["fichier"]; 
     } 

这是结果在DGV加载窗体时(前)和光标的deplacement后

感谢您的帮助:)

回答

1

尝试添加这些行之一调用之后“affich()”在你的窗体2()构造函数...

要么

dataGridView1.AutoResizeColumns( DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);

dataGridView1.Update();

+0

感谢鲁斯兰,但我得到了相同的结果,所有的时间@Lina即使添加这些行之后:( – Lina

+0

?只需确认一下 - 当你点击数据网格时数据就会出现,对吧? – Ruslan

+0

是的,我仍然有这个问题:( – Lina

相关问题