Foxtable(狐表)用户栏目专家坐堂 → 求助ListView里的自动适应问题


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

主题:求助ListView里的自动适应问题

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
求助ListView里的自动适应问题  发帖心情 Post By:2023/12/12 11:55:00 [只看该作者]

看到ListView实列里有这么一句代码:lvw.Columns("国家").AutoResize,但是如果有多列,要怎么改这句代码,让所有的列自适应,帮助都看过了,没找到,也试了很多种方法都没有成功,求老师指教

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


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/12/12 12:00:00 [只看该作者]

逐一设置,比如

lvw.Columns("列一").AutoResize
lvw.Columns("列二").AutoResize

或者

for each c as string in {"列一","列二"}
lvw.Columns(c).AutoResize
next

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/12/12 12:18:00 [只看该作者]

第二种方法想是想到了,但是如果遇到十几、二十几、甚至更多的时候,这个代码也是挺长的,也说明了Columns()里必须要指定列名。不知道Columns()是否可以改一下功能,在不输入列名的情况下则表示所有列都算上,这样代码更简洁一些

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


加好友 发短信
等级:狐精 帖子:3205 积分:21305 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/12/12 12:42:00 [只看该作者]

循环所有列啊

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


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/12/12 13:50:00 [只看该作者]

改不了,这个控件是.net自带的。

如果不是只设置其中的几个列,而是所有列都这样,遍历所有列即可

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
For Each c As WinForm.ListViewColumn In lvw.Columns
    c.AutoResize
Next 

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/12/12 13:56:00 [只看该作者]

图片点击可在新窗口打开查看晕,我咋就没转过弯来

 回到顶部