|
分類:[VB.NET/VB2005 以降]
VB.NET初心者につき、大変恐縮ですが問題解決に向けて助言をお願い致します。
手順として、まずは下記のようなCSVファイル(image.csv)をDataTableを用いた構文でVBファイル内に読み込みます。
ID,Item 1,3.jpg 2,4.jpg 3,5.jpg
次にSQL形式でDataTableから一行目を項目として(HDR=Yes)表を呼び出し(MsgBox等で実際に表示はさせません)、あらかじめ用意してあるVB主体アプリケーションのページの中にある画像詳細番号(1、2、3、…)という表記+テキストボックス(画像が格納されているディレクトリ(Z:database/item/3.jpg の様な感じに外部のサーバーから画像を参照しています)を入力する)に表の内容をリンクさせて表示させるというのが目的です。(元々は例として3.jpgが画像詳細番号3のテキストボックスに格納されるといった仕様でしたが、これからはCSVファイル内のID番号と画像詳細番号を連動させて管理するというのが狙いです。)
CSVファイルの格納場所は(Z:database/item/image.csv)とします。
参考として、下記に元々使用している画像をセットするための構文を記載致します。
''' <summary>データをフォームにセット(統合)</summary> ''' <returns></returns> ''' <remarks></remarks> Private Function setItem(ByVal item_unique_id As String) As Boolean LogClass.Trace(LogClass.LogLevel.Debug, "setItem(item_unique_id:" & item_unique_id & ")")
Try Dim new_flg As Boolean = False
new_flg = If(Me.setCmnItem(item_unique_id), new_flg, True) new_flg = If(Me.setRktAItem(item_unique_id), new_flg, True) new_flg = If(Me.setRktBItem(item_unique_id), new_flg, True) new_flg = If(Me.setYhoItem(item_unique_id), new_flg, True) new_flg = If(Me.setFtrAItem(item_unique_id), new_flg, True) new_flg = If(Me.setFtrBItem(item_unique_id), new_flg, True) new_flg = If(Me.setBdsItem(item_unique_id), new_flg, True) new_flg = If(Me.setAmzItem(item_unique_id), new_flg, True) new_flg = If(Me.setPnpItem(item_unique_id), new_flg, True)
If new_flg Then Me.btn_F12.Text = "登録" Me.btn_F12.Enabled = True Else Me.btn_F12.Text = "登録" Me.btn_F12.Enabled = True End If
Catch ex As Exception Return False End Try
'画像のセット Try Dim btnImageList As Dictionary(Of String, List(Of Button)) = Me.getBtnImageList() For Each key As String In btnImageList.Keys Dim btnList As List(Of Button) = btnImageList(key) Dim dir As String = Me.cmnProp.FtpNetworkDrive & "/" & Me.getSaveImageDir(key) If Not System.IO.Directory.Exists(dir) Then Return True End If dir &= "/" & item_unique_id If Not System.IO.Directory.Exists(dir) Then Return True End If
Dim files As String() = System.IO.Directory.GetFiles(dir) For Each file As String In files Dim item_brach As String = System.IO.Path.GetFileNameWithoutExtension(file) If IsNumeric(item_brach) AndAlso btnList.Count >= item_brach Then Me.setCtlImageInfo(btnList(CInt(item_brach) - 1), file.Replace("\", "/")) End If Next Next Catch ex As Exception LogClass.Trace(LogClass.LogLevel.Err, "画像読込エラー", ex) End Try Return True End Function
必要に応じて情報を追記させて頂きます。
何卒宜しくお願い申し上げます。
|