请教坛中前辈&高手&老师!!! 先行谢过!!
参照
“点击浏览该文件:双击列标题事件.table”的代码写了双击多层表头列标题隐藏/展开子标题的代码。
1、首次进入窗体中的表,双击动作运行正常,关闭窗体(未曾退出程序)再进入双击无反应了。再次退出进入,又正常,退出再进入,无反应,如此反复。
2、引入 MessageBox.show() 测试, 多次进入都是正确的。拿掉测试,还是如前述1的情况,
代码如下:
Public headCol As Integer = -1
Public Sub MouseLeaveCellHandler(sender As object, e As C1.Win.C1FlexGrid.RowColEventArgs )
headcol = -1
End Sub
Public Sub MouseEnterCellHandler(sender As object, e As C1.Win.C1FlexGrid.RowColEventArgs )
If e.Row = 0 Then
headcol = e.Col
End If
End Sub
Public Sub DoubleClickHandler(sender As object, e As System.EventArgs)
If headcol <> -1 AndAlso Tables(sender.name).Cols(headcol-1).Caption.Contains("_") Then
Dim fldcap As String = Tables(sender.name).Cols(headcol-1).Caption
Dim i As Integer = fldcap.IndexOf("_")
Dim fldcapqz As String = fldcap.SubString(0,i+1)
For Each nowc As Col In Tables(sender.name).Cols
'MessageBox.show(fldcapqz)
If nowc.Caption.StartsWith(fldcapqz) Then
'含"+"&"*"号的标题项为固有显示&隐藏项
If nowc.Caption.EndsWith("+") OrElse nowc.Caption.EndsWith("*") Then
Continue For
Else
nowc.Visible = not nowc.Visible
End If
End If
Next
End If
End Sub
[此贴子已经被作者于2019/7/13 10:45:38编辑过]