2010-12-03 5 views
0

DataGridViewにデータベースのデータを入力しようとしています。このプログラムは、走っているからのテストです。動物と呼ばれるテーブルが1つあります。行 "use(SqlCeDataAdapter a =新しいSqlCeDataAdapter(" SELECT * FROM Animals "、c))は、Animalsを別のものに変更すると失敗します。そのため、テーブルが確実に読み込まれます。ただし、DataGridViewには何も表示されません。カラム名もデータもなく、空のグレーだけです。私は何が欠けていますか?DataGridViewの塗りつぶしに関する問題

public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      FillData(); 
     } 

     void FillData() 
     { 
      using (SqlCeConnection c = new SqlCeConnection(Properties.Settings.Default.DataConnectionString)) 
      { 
       c.Open(); 
       using (SqlCeDataAdapter a = new SqlCeDataAdapter("SELECT * FROM Animals", c)) 
       { 
        DataTable t = new DataTable(); 
        a.Fill(t); 
        dataGridView1.DataSource = t; 
       } 
      } 
     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 

     } 
    } 
+0

「DataTable」にデータが入力されていることを確認できますか? – decyclone

答えて

2
dataGridView1.DataBind(); 

あなたのグリッドにソースを与えた後、それを追加し、それが動作するはずです。

+0

「System.Windows.Forms.DataGridView」に「DataBind」の定義が含まれていないと言われています.-( –

+0

残念ですが、デバッグしてテーブルに値があることを確認しましたか? – Pabuc

+1

そうなら、dataGridView1.AutoGenerateColumns = True – Pabuc

0

dataGridView1.DataBind()も

とGridViewの自動生成列プロパティがtrueに設定されていることを確認します。

関連する問題