0

実行時に新しい DataSource と DataSet をアタッチします。ランタイムにもフィルターを設定しましたが、エラーが表示されます

列 [invoice_number] が見つかりません

私のコード:

// Create a data adapter. 
OleDbDataAdapter adapter = 
    new OleDbDataAdapter("SELECT * FROM gridview", connection);

// Create and fill a dataset. 
DataSet sourceDataSet = new DataSet();
adapter.Fill(sourceDataSet);

// Specify the data source for the grid control. 
gridControl1.DataSource = sourceDataSet.Tables[0];

// error show in this line
invoiceBindingSource.Filter = 
    string.Format("invoice_number = '{0}'", textEdit5.Text);

しかし、私の OrionSystem Access データベースには、テーブル gridview に列 "invoice_number" があります。私のエラーは何ですか?

4

2 に答える 2

1

バインディングソースでフィルターを設定していますが、グリッド コントロールでデータソースを直接設定しています。

バインディングソースにデータソースを設定してから、グリッドのデータソースをバインディングソースに設定する必要があります。

// Create a data adapter. 
OleDbDataAdapter adapter = 
    new OleDbDataAdapter("SELECT * FROM gridview", connection);

// Create and fill a dataset. 
DataSet sourceDataSet = new DataSet();
adapter.Fill(sourceDataSet);

// Specify the data source for the bindingsource. 
invoiceBindingSource.DataSource = sourceDataSet.Tables[0];

// Specify the data source for the grid control. 
gridControl1.DataSource = invoiceBindingSource;

// error show in this line
invoiceBindingSource.Filter = 
    string.Format("invoice_number = '{0}'", textEdit5.Text);

乾杯

于 2013-11-09T06:38:57.253 に答える