我使用添加了列表视图控件。净4.5。
我的列表视图控件的模式设置为DETAILS视图
并在构造函数和填充列表视图后的加载事件上注册如下事件。
AddHandler lvResult.ColumnWidthChanging, AddressOf lvResult1_ColumnWidthChanging
此外,在设计时,在更改事件时创建。
从未调用此事件。我能够获得调用ColumnWidthChanged
事件,但更改未被调用。
请说明出了什么问题?
我需要这个来禁用列表视图中的列重缩放。如果你知道禁用列大小调整的任何替代方法,请与我分享?
感谢您的
ColumnWidthChanging事件看起来充其量是不可靠的。我在VB2008中也看到过同样的情况。我不确定ColumnWidthChanging的解决方案是什么,但这里有一个不错的解决方案(如果你原谅我的VB的话)。只需在Changed事件中将列宽设置回原始值即可。我在这里使用了90的任意值,但您可以使用具有适当列宽的列表或数组。
Private Sub ListView1_ColumnWidthChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.ColumnWidthChangedEventArgs) Handles ListView1.ColumnWidthChanged
Static busy As Boolean = False
If busy Then Exit Sub
busy = True
ListView1.Columns(e.ColumnIndex).Width = 90
busy = False
End Sub