以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  ListView 显示图片  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=143741)

--  作者:lshshlxsh
--  发布时间:2019/12/3 11:00:00
--  ListView 显示图片

RowActivate事件


麻烦老师帮忙看一下 下面这段代码 图片没有的 下载后 位什么不显示?  把红色部分启用就可以了   写成变量不行  

计算是 bz0002.jpg这张图片 不存在   双击后  ListView 就能正常显示    



Dim tb1 As WinForm.Table = e.Form.Controls("Table1")
tb1.Table.Position =tb1.Table.FindRow(" 物料代码 =\'" & e.Sender.Current("物料代码") & "\'")

    DataTables("物料表").LoadFilter =" 物料代码 =\'" & tb1.Table.Current("物料代码") & "\'  "
    DataTables("物料表").Load
    
    Dim fm As WinForm.PictureViewer = Forms(e.Form.Name).Controls("图片")
    fm.CommandVisible =False
    
    
    
    Dim ftp1 As New FtpClient
    ftp1.Host = vars("ftpip")
    ftp1.Account = vars("ftpuser")
    ftp1.Password =  vars("ftppassword")
    ftp1.Port = vars("ftpport")
    ftp1.RootDir="\\商品image"
    Dim lst As New List(of String)
    lst = tb1.Table.Current.DataRow.Lines("图片")
    For Each dc As String In lst
        If FileSys.FileExists( ProjectPath & "\\RemoteFiles\\" & dc ) =False Then
            ftp1.Download( "\\商品Image\\" & dc ,  ProjectPath & "\\RemoteFiles\\" & dc )
        End If
    Next
    

\'tb1.Table.Current("图片") ="bz0002.jpg"

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim Key As String = tb1.Table.Current("图片")
Dim img As String = ProjectPath & "RemoteFiles/" & tb1.Table.Current("图片")
lvw.Images.AddLargeImage(Key, img) \'添加照片,直接用文件名作为图片键值
Dim vr As  WinForm.ListViewRow =  lvw.Current \'增加一行
vr.ToolTipText = tb1.Table.Current("效果")  \'设置此行的动态提示
vr.ImageKey = Key \'设置图片键值


vr.Retrieve

--  作者:有点蓝
--  发布时间:2019/12/3 11:17:00
--  
图片列会有多个文件?

Dim lst As New List(of String)
    lst = tb1.Table.Current.DataRow.Lines("图片")
msgbox(lst.count) ‘这里显示几个文件?

如果是多个文件,这个路径肯定是有问题的
Dim img As String = ProjectPath & "RemoteFiles/" & tb1.Table.Current("图片")


--  作者:lshshlxsh
--  发布时间:2019/12/3 12:01:00
--  
只有一个文件