作者:手机用户2502939977 | 来源:互联网 | 2023-07-21 12:13
在listVied 中 。 项的 距离 离得太远了 。 。。 我要让他们连在一起都没办法。
请问有什么方法可以将listView 的距离拉近 。
是里面的项拉近 !
23 个解决方案
ListView默认以项字体高度为行高,其次判断有无图标,如果图标高度大于字体高度,则以图标高度为准.
你可以做一个透明的图标,设置为每行项的图标,比如这个图标高度是20,那么行高就是20.
如果不希望因为放入一个图标而使得行看起来文字缩进的,可以做成宽1高20的图标.这个图标可以动态生成:
dim ItmIcon as new bitmap(1,20)
ImageList1.Images.Add(ItmIcon)
如果是大图标模式,则需要在windows下操作:
桌面空白处=>右键=>属性=>设置桌面图标间距.
我的建议是:使用Button或Picturebox等控件通过代码来布局,而不是依赖LV.这样会更自由些.
你一行里面的两张图片是在同一个单元格里还是两个单元格里?
有没高手教教啊 。 。。 就快上学了哎 。 。 快点帮我 。。
listview这个控件有个毛病,就是大小不能随意调,你要是想随意调,那就只能绑定一个imagelist,然后通过调整imagelist里面的image的size来调整项的大小。
listview有两个属性,一个是smallimagelist,一个是largeimagelist,在属性列表里能找到,随便绑定哪个都行。分别对应view属性的largeicon跟smallicon。绑定以后item的大小就是你设置的图片的大小。
实在不行就protected override void OnDrawItem(DrawListViewItemEventArgs e)吧。
自己画item算了。
http://www.codesoso.com/code/Image-ListView-SubItem.aspx
这是别人写的一个listview,要实现你那样的效果还要再自己小改一下。
我不会重绘 。 。 还没学到 。 。 能教我吗 。。
谢谢你帮了我这么多 。 。
这个。。。。。。教字从何谈起,大家一起讨论罢了,都是菜鸟,呵呵
只能是有了问题大家一起想办法解决,从头到尾教不太现实。
实际上listview绘制的时候就用到了Ondrawitem这个事件。只不过你现在为了实现自己想要的功能把这个函数加强了一下而已。
你找listview这个类的元数据。东西都在里面。
public class ExListview : ListView
{
public void Exlistview()
{
}
protected override void OnDrawItem(DrawListViewItemEventArgs e)
{
base.OnDrawItem(e);
把重绘的代码写到这个里面
}
}
楼主 ,请问怎么改改呢,现在我也要用这个知识点 谢谢了
太棒了,终于解决问题了,楼主在21楼给的代码确实能用。拷贝后调用方法就行。