以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]ListView从FTP返加数据显示模式为详细信息 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=77220) |
-- 作者:weigqing9 -- 发布时间:2015/11/13 8:14:00 -- [求助]ListView从FTP返加数据显示模式为详细信息 Dim lvw As WinForm.ListView = Forms("附件").Controls("ListView1") lvw.StopRedraw() \'暂停绘制 lvw.View = ViewMode.Details \'显示模式为详细内容 lvw.GridLines = True \'显示网格线 Dim cls() As String = {"名称","类型","修改日期","大小"} \'指定要显示的各列 Dim wds() As Integer = {220,100,75,80} \'定义列宽 For i As Integer = 0 To cls.Length - 1 Dim c As WinForm.ListViewColumn = lvw.Columns.Add()\'增加列 c.Name = cls(i) \'指定列名 c.Text = cls(i)\'指定列标题 c.Width = wds(i) \'指定列宽 Next lvw.VirtualMode = True \'使用虚拟模式 lvw.ResumeRedraw() \'恢复绘制 Dim sts As List(of String) = ftp.GetDetailList(fp)\'返回FTP服务器指定目录下的全部文件和子目录,包括文件的名称,修改时间和大小,各项之间用符号*分隔. If sts.Count > 0 Then \'若有文件 For Each st As String In sts Dim vr As WinForm.ListViewRow = lvw.Rows.Add() \'增加一行 vr(st) = sts(st)\'这句出错了,把返回的字符串分隔并填入相应的列,请老师补充代码,谢谢! Next End If [此贴子已经被作者于2015/11/13 8:15:42编辑过]
|
-- 作者:Hyphen -- 发布时间:2015/11/13 8:57:00 --
[此贴子已经被作者于2015/11/13 9:02:42编辑过]
|
-- 作者:Hyphen -- 发布时间:2015/11/13 9:03:00 -- Dim cols() As String = { "名称","修改日期","大小" } Dim sts As List(of String) = ftp.GetDetailList(fp) \'返回FTP服务器指定目录下的全部文件和子目录,包括文件的名称,修改时间和大小,各项之间用符号*分隔. If sts.Count > 0 Then \'若有文件 For Each st As String In sts Dim vr As WinForm.ListViewRow = lvw.Rows.Add() \'增加一行 Dim s() As String = st.Split("*") For i As Integer = 0 To cols.Length-1 vr(cols(i)) = s(i) If i=2 Then If s(i) <> "D" Then vr("类型") = "文件" Else vr(cols(i)) = "" vr("类型") = "目录" End id End If Next Next End If |
-- 作者:weigqing9 -- 发布时间:2015/11/13 11:26:00 -- 完美解决,感谢你!
|