gpt4 book ai didi

c# - 在 WINFORM 中,listView ColumnWidthChanging 事件未触发或替代以禁用调整列大小

转载 作者:太空宇宙 更新时间:2023-11-03 13:31:01 24 4
gpt4 key购买 nike

我已经使用 .NET 4.5 添加了 ListView 控件。

我的 ListView 控件的模式设置为 DETAILS View

并在填充 ListView 后在构造函数和加载事件上注册如下事件。

AddHandler lvResult.ColumnWidthChanging, AddressOf lvResult1_ColumnWidthChanging

同样,在设计时,根据变化的事件创建。

永远不会调用此事件。我能够调用 ColumnWidthChanged 事件但未调用更改。

请指出哪里出了问题?

我需要这个来禁用 ListView 中的列大小调整。如果您知道禁用列大小调整的任何替代方法,请与我分享。 ?

谢谢你

最佳答案

ColumnWidthChanging 事件似乎充其量是不可靠的。我在 VB 2008 中看到过同样的情况。我不确定 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

关于c# - 在 WINFORM 中,listView ColumnWidthChanging 事件未触发或替代以禁用调整列大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20536725/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com