• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:DataGridViewに画像を表示する方法)

DataGridViewに画像を表示する方法

このQ&Aのポイント
  • Microsoft Visual Studio 2008とSQL Server 2005を使用して、DataGridViewに画像を表示する方法について教えてください。
  • 画像がない場合には特定の画像を表示することもできます。
  • データベースとの接続や画像の取得など、必要なコードの一部も示しているので、参考にしてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

DataGridViewのCellFormattingイベントにて   if e.ColumnIndex = 1 then     ' 画像カラム     ' データセットのテーブルを取得     dim tbl as DataTable = CType(CType(dgrview.DataSource,BindingSource) _       .DataSource, DataSet).Tables("テーブル")     ' 表示する行を取得     dim row as DataRow = tbl.rows( e.RowIndex )     try       ' イメージの取得 or 設置       dim bmp as Bitmap = Bitmap.FromFile( row("Image") )       e.Value = bmp     catch ex as Exception     end try   end if といった具合にコードで画像を張ってやる必要があるでしょう

noname#208236
質問者

お礼

ありがとうございます。自己解決できました。

noname#208236
質問者

補足

お返事ありがとうございます。下記のようにプログラムを修正したのですが、エラーが発生してしまいます。 これはどう対処すればよろしいでしょうか? <エラー内容> 型 'System.Data.DataSet' のオブジェクトを型 'System.Windows.Forms.BindingSource' にキャストできません。 '//CellFormattingイベントハンドラ Private Sub dgrview_CellFormatting(ByVal sender As Object, _                      ByVal e As DataGridViewCellFormattingEventArgs) _                      Handles dgrview.CellFormatting   If e.ColumnIndex = 1 Then       ' 画像カラム       ' データセットのテーブルを取得       Dim tbl As DataTable = CType(CType(dgrview.DataSource, BindingSource).DataSource, DataSet).Tables("テーブル") ←ここでエラー発生       ' 表示する行を取得       Dim row As DataRow = tbl.Rows(e.RowIndex)       Try         ' イメージの取得 or 設置         Dim bmp As Bitmap = Bitmap.FromFile(row("Image"))         e.Value = bmp       Catch ex As Exception       End Try   End If End Sub