2012-04-26 55 views
0

我在我的项目创造了这么多的列表视图,即IM懒得添加到每个列表视图resize事件与百分比。是否有任何其他的把戏,谁只是鳞列,从而他们是谁?调整大小Listviewcolumns(详细

thx

+1

你可以显示你的resize事件吗? – LarsTech 2012-04-26 15:22:22

+0

我没有,因为我有这么多的listviews,即时通讯懒得给每个人添加一个resize事件,它必须包含百分比。所以我问,如果有另一种方法。 很抱歉,如果这是不可理解的。 – Tearsdontfalls 2012-04-26 15:33:04

+2

说你懒惰不是一个很好的借口,也不会让别人去帮助你。关于你的问题,所有的列总是假设是相同的宽度?也就是说,如果列表视图控件的宽度为200像素,并且有4列,那么所有4列都假设为50像素? – LarsTech 2012-04-26 15:43:13

回答

1

有一种简单的方法来自动调整它们。我不记得确切,但它涉及将列宽设置为0,-1或-2。它可能是-1或-2。试试看。

+0

Thx,它工作良好,但是当我调整窗体大小时闪烁一秒钟 – Tearsdontfalls 2012-05-08 15:41:42

1

如果您为每个ListView使用相同的代码来处理Resize事件,那么创建一个方法并将其用作每个ListView的事件处理程序就足够了,在执行事件处理程序代码时,您可以从sender参数中获取引发事件的实例,除了参数是Object类型外,它实际上包含对ListView实例的引用,因此,您可以将参数值转换为ListView类型

+0

年,我也这么认为,但我如何获得初始化宽度,我想我可以计算每个percantage,我可以调整它们,顺便说一句有任何之前调整大小事件? – Tearsdontfalls 2012-04-26 17:39:57

0

这个问题很难回答,因为没有足够的细节。如果你有一个列表视图,它是填充,那么你可以使用下面的代码来自动调整列宽:

this.listControl.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); 

它在我的项目能正常工作,所以你可以给它一个尝试为好。

+0

听起来不错,但我不知道什么是人口密集的listview。在详细模式下的listview,我已经进入了列之前,我不会动态创建任何列。在哪种情况下我应该使用这个? – Tearsdontfalls 2012-04-26 19:03:57