2016-11-11 5 views
0

私は、テキスト、ID、およびイメージ(BLOB)を持つmysqlのテーブルを持っています。データグラムをdatagridviewに表示する必要があります。これは私がMysqldataをdatagridviewにバインドするエラー

MySqlConnection mysqlCon = new 

MySqlConnection(MySQLConnectionString); 
mysqlCon.Open(); 

MySqlDataAdapter MyDA = new MySqlDataAdapter(); 
string sqlSelectAll = "SELECT * from info"; 
MyDA.SelectCommand = new MySqlCommand(sqlSelectAll, mysqlCon); 

DataTable table = new DataTable(); 
MyDA.Fill(table); 

dataGridView1.DataSource = new BindingSource(table,null); // Error at this line 

は、私は次のエラーを取得する何をしたかである

enter image description here

私は、エラーがいくつかあるためである発見

この

EDITを修正するにはどうすればよいですイメージが空のBLOBです。イメージを含むすべての行を選択すると、エラーは表示されなくなりました。

ヌル値のDGVイメージ列の正常な動作は、単に古典的な壊れた画像を表示することです

+0

バインドとは関係ありません.DGV cantはBLOBをイメージ列のイメージに変換します。データに問題がある可能性があります。手動で何かをしようとしていますか? – Plutonix

+0

hello編集内容を確認してください – Smith

+0

画像列に関するコードがありますか? DGVの通常の動作は、DBNullの壊れた画像を表示することです – Plutonix

答えて

2

を結合時にこれをチェックメイトするとにかくあり:

enter image description here

だから必ずがエラーの原因となるコードをどこかで実行してはいけません。 invalid parameter aksiには、破損したデータが入っている行がないことを確認してください。また、データがNULLの場合に使用するデフォルトの画像を指定することができます。

// class var for the image 
private Image noImg = Properties.Resources.exclamation; 
... 
// set DS and specify null image for col: 
dgv2.DataSource = new BindingSource(dtSample, null); 
dgv2.Columns[2].DefaultCellStyle.NullValue = noImg; 

enter image description here

あなたがやっているコードがある場合、データが実際に破損しているかされている場合これはあなたの問題を解決するために何もしないかもしれませんエラーの原因となるもの(カスタムフォーマッタのようなもの)

関連する問題