BluePointLilac / ContextMenuManager

🖱️ 纯粹的Windows右键菜单管理程序
https://bluepointlilac.github.io/ContextMenuManager
GNU General Public License v3.0
12.51k stars 623 forks source link

BUG: 多级菜单项目Index索引超出范围 #66

Closed eritpchy closed 3 years ago

eritpchy commented 3 years ago

重现路径:

  1. 新建多级菜单
  2. 点击添加分隔线
  3. 删除分隔线
  4. 问题出现

视频: https://user-images.githubusercontent.com/8630635/120916252-1a851980-c6db-11eb-83f5-3ba0a8091f2a.mp4 image


有关调用实时(JIT)调试而不是此对话框的详细信息, 请参见此消息的结尾。

** 异常文本 ** System.ArgumentOutOfRangeException: 索引 2 超出范围。 参数名: index 在 System.Windows.Forms.Control.ControlCollection.get_Item(Int32 index) 在 ContextMenuManager.Controls.Interfaces.DeleteButton.<>c__DisplayClass0_0.<.ctor>b__0(Object sender, MouseEventArgs e) 在 System.Windows.Forms.MouseEventHandler.Invoke(Object sender, MouseEventArgs e) 在 System.Windows.Forms.Control.OnMouseDown(MouseEventArgs e) 在 BluePointLilac.Controls.PictureButton.OnMouseDown(MouseEventArgs e) 在 System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks) 在 System.Windows.Forms.Control.WndProc(Message& m) 在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

** 已加载的程序集 ** mscorlib 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll

ContextMenuManager 程序集版本:3.3.1.0 Win32 版本:3.3.1.0 基本代码:file:///E:/Users/Jason/Downloads/ContextMenuManager.NET.4.0.exe

System.Windows.Forms 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Drawing 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

PresentationFramework 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework/v4.0_4.0.0.0__31bf3856ad364e35/PresentationFramework.dll

PresentationCore 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll

WindowsBase 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll

System.Core 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

mscorlib.resources 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll

System.Configuration 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Xml 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

System.Drawing.resources 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing.resources/v4.0_4.0.0.0_zh-Hans_b03f5f7f11d50a3a/System.Drawing.resources.dll

Accessibility 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll

System.Windows.Forms.resources 程序集版本:4.0.0.0 Win32 版本:4.8.4161.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll

** JIT 调试 ** 要启用实时(JIT)调试, 该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置 jitDebugging 值。 编译应用程序时还必须启用 调试。

例如:

启用 JIT 调试后,任何未经处理的异常 都将被发送到在此计算机上注册的 JIT 调试程序, 而不是由此对话框处理。

BluePointLilac commented 3 years ago

未来更新版本会修复