- ベストアンサー
DataGridViewにURLで指定した画像を表示したい
VB.Net 2005でウィンドウズアプリケーションを作成しています。 DataGridViewのDataGridViewImageColumnにURLで指定した画像(例:http://xxx/image.jpg)を表示したいのですが、そもそもそういうことってできるのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
''' <summary> ''' URL指定されたイメージを取得する ''' </summary> ''' <param name="imageUrl">取得するイメージのURL</param> ''' <returns></returns> ''' <remarks></remarks> Private Function GetWebImage(ByVal imageUrl As String) As Image Using wc As New System.Net.WebClient Using st As System.IO.Stream = wc.OpenRead(imageUrl) Return Image.FromStream(st) End Using End Using End Function こっちの方がシンプルですね。。。:)
その他の回答 (1)
- unamana19
- ベストアンサー率62% (56/89)
''' <summary> ''' URL指定されたイメージを取得する ''' </summary> ''' <param name="imageUrl">取得するイメージのURL</param> ''' <returns></returns> ''' <remarks></remarks> Private Function GetWebImage(ByVal imageUrl As String) As Image Using wc As New System.Net.WebClient Dim data As Byte() = wc.DownloadData(imageUrl) Using ms As System.IO.MemoryStream = New System.IO.MemoryStream(data) Return Image.FromStream(ms) End Using End Using End Function 上記のファンクションを利用して、 Me.DataGridView1.Rows(0).Cells(0).Value = GetWebImage("http://okwave.jp/images/question1.gif") Me.DataGridView1.Rows(1).Cells(0).Value = GetWebImage("http://okwave.jp/images/question2.gif") Me.DataGridView1.Rows(2).Cells(0).Value = GetWebImage("http://okwave.jp/images/question3.gif") このように呼び出せば、画像を表示できます。 Columnタイプのチェックなどは適宜実装して下さい。 注意!上記サンプルコードは表示の関係上、半角スペースが全角スペースになっています。
お礼
す、すごい! 感動です(ToT)できました。 一旦ローカルの特定ディレクトリに画像をダウンロードして、そいつを表示っというかなり雑なコードを書いていましたが、早速教えていただいたコードを採用させていただきます。 助かりましたぁ。 ありがとうございます!!