Foxtable(狐表)用户栏目专家坐堂 → [求助]如何设计适合自己的文件管理器


  共有2614人关注过本帖树形打印复制链接

主题:[求助]如何设计适合自己的文件管理器

帅哥哟,离线,有人找我吗?
dahai
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
[求助]如何设计适合自己的文件管理器  发帖心情 Post By:2024/8/22 10:36:00 [显示全部帖子]

老师,您好:

我用的是阿里云服务器,现在想上传一些文件凭证,比如合同,fa piao,付款回单等。目前使用的是软件自带的文件管理器,功能很齐全,但是操作有点复杂,想自己设计一款,实现如下图所示的功能。想请教一下老师,foxtable软件支持这样的设计吗?是否有相关的教程供参考?谢谢!
图片点击可在新窗口打开查看此主题相关图片如下:文件管理器.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
dahai
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
  发帖心情 Post By:2024/8/22 13:37:00 [显示全部帖子]

问题见图片,谢谢!


图片点击可在新窗口打开查看此主题相关图片如下:文件管理器2.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
dahai
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
  发帖心情 Post By:2024/8/23 10:08:00 [显示全部帖子]


目的:上传完附件,想在附件列中显示已经上传的所有文件的名字,代码如下:
问题:有时候能显示,有时候不显示,请老师帮助看看是否有解决的办法?谢谢

在窗口的doubleclick设置代码为:

    If e.Col.Name = "附件" Then
        Dim ftp1 As New FtpClient
        ftp1.Host = "*****"
        ftp1.Account = "*****"
        ftp1.Password = "*****"
        ftp1.RenameEnabled = False '禁用重命名文件按钮
        ftp1.MakerDirEnabled = False '禁用新建文件夹
        If ftp1.DirExists("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "") Then
            ftp1.ChangeDir("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
        Else
            ftp1.MakeDir("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "") 
            ftp1.ChangeDir("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
        End If
        ftp1.RootDir = "/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "" '设置根目录
        ftp1.OpenManager()
        Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
        Dim st As String = String.Join(",", drs.ToArray)
        e.Row("附件") = st.Replace("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "/", " ")
    End If


图片点击可在新窗口打开查看此主题相关图片如下:文件管理器3.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2024/8/23 10:11:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
dahai
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
  发帖心情 Post By:2024/8/23 10:44:00 [显示全部帖子]

1、加上cancel

    If e.Col.Name = "附件" Then
e.cancel=true
        Dim ftp1 As New FtpClient
……

这种方式也是同样的情况,单元格里面有时候有内容,有时候没有

2、      

 Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
  MessageBox.Show(drs.Count)
  隐藏此行    ' Dim st As String = String.Join(",", drs.ToArray) 
  隐藏此行  ' e.Row("附件") = st.Replace("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "/", " ")

单元格里面有内容,但是msgbox(drs.count)  有时候显示0,有时候显示5


此主题相关图片如下:文件管理器4.png
按此在新窗口浏览图片

 回到顶部
帅哥哟,离线,有人找我吗?
dahai
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
  发帖心情 Post By:2024/8/23 11:07:00 [显示全部帖子]

MessageBox.Show("/data/caigou/" & e.Row("供应商") &  e.Row("采购单号")) ——每次会弹出固定的路径
Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") &  e.Row("采购单号"))
MessageBox.Show(drs.Count) ——还是会交替出现,0 和 5



 回到顶部
帅哥哟,离线,有人找我吗?
dahai
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
  发帖心情 Post By:2024/8/23 11:20:00 [显示全部帖子]

Dim pt As String = "/data/caigou/" & e.Row("供应商") & e.Row("采购单号") & ""  ——为了避免路径不一样,定义个路径,但是现象还是一样,交替出现0和5
        
        If ftp1.DirExists("" & pt & "") Then
            ftp1.ChangeDir("" & pt & "")
        Else
            ftp1.MakeDir("" & pt & "") 
            ftp1.ChangeDir("" & pt & "")
        End If
        ftp1.RootDir = "" & pt & "" '设置根目录
        ftp1.OpenManager()
        Dim drs As List(Of String) = ftp1.GetFileList("" & pt & "")
        MessageBox.Show(drs.Count)

 回到顶部
帅哥哟,离线,有人找我吗?
dahai
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
  发帖心情 Post By:2024/8/23 11:36:00 [显示全部帖子]


“附件”列后面有个“备注”列。双击备注单元格,刷新附件单元格的内容,基本上不会出现单元格为空的情况。MessageBox.Show(drs.Count) 都是5,不会出现0的情况。

    If e.Col.Name = "备注" Then
        e.Cancel = True
        Dim ftp1 As New FtpClient
        ftp1.Host = "****"
        ftp1.Account = "****"
        ftp1.Password = "****"
        Dim pt As String = "/data/caigou/" & e.Row("供应商") & e.Row("采购单号") & ""
        Dim drs As List(Of String) = ftp1.GetFileList("" & pt & "")
        MessageBox.Show(drs.Count)
        Dim st As String = String.Join(",", drs.ToArray)
        e.Row("附件") = st.Replace("" & pt & "", " ")
    End If

 回到顶部
帅哥哟,离线,有人找我吗?
dahai
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:719 威望:0 精华:0 注册:2019/1/9 15:59:00
  发帖心情 Post By:2024/8/23 12:13:00 [显示全部帖子]

“附件”列属性扩展列类型改为“无”试试——现象还是一样,交替出现0和5

 回到顶部