.NET 4.7.2 WinForms自定义Tab控件致VS2019设计器卡顿
自定义左侧垂直Tab控件设计器无限卡顿排查求助
环境信息
- 框架版本:VB.NET 4.7.2 WinForms
- IDE:VS2019 Pro(已安装最新补丁)
问题现象
基于StackOverflow代码自定义左侧垂直Tab控件,已修复内存泄漏问题。空控件在设计器中表现正常;但当给标签页添加嵌套TableLayoutPanel,并在其中填充Dock=Fill的控件后,VS2019出现无限卡顿。
已做排查
- 添加递归阻止标志定位到
OnPaint事件,该标志可解决卡顿,但会导致控件完全无法绘制。 - 怀疑
Paint事件被重复触发,但未在代码中找到触发循环的逻辑。
自定义Tab控件核心代码片段
Public Class VerticalTabControl Inherits TabControl ' 内存泄漏修复相关代码 ' ... Protected Overrides Sub OnPaint(e As PaintEventArgs) ' 自定义绘制逻辑 MyBase.OnPaint(e) ' 其他绘制代码 ' ... End Sub ' 其他重写方法(如OnSizeChanged、OnSelectedIndexChanged等) ' ... End Class
求排查思路
希望得到针对该卡顿问题的排查方向,尤其是OnPaint事件相关的循环触发可能性排查方法。
内容的提问来源于stack exchange,提问作者John Tamburo
相关产品推荐
相关产品推荐

