C# 为什么调用Invoke时会出现异常?

C# 为什么调用Invoke时会出现异常?,c#,C#,在尝试调用窗体上的Invoke()函数时,我得到一个ArgumentOutOfRangeException。我使用委托模式来避免非法的跨线程调用,因为addAgentToList()函数是由另一个线程(不是处理GUI的线程)调用的 为什么会出现以下异常 以下是作为文本表示的例外情况: An unhandled exception of type 'System.ArgumentOutOfRangeException' occurred in System.Windows.Forms.dll

在尝试调用窗体上的
Invoke()
函数时,我得到一个
ArgumentOutOfRangeException
。我使用委托模式来避免非法的跨线程调用,因为
addAgentToList()
函数是由另一个线程(不是处理GUI的线程)调用的

为什么会出现以下异常

以下是作为文本表示的例外情况:

An unhandled exception of type 'System.ArgumentOutOfRangeException' occurred in System.Windows.Forms.dll

Additional information: Value of '1' is not valid for 'Value'. 'Value' should be between 'Minimum' and 'Maximum'.

我想说的是,isAgentOnList方法中的某个地方有一个问题,您能展示该方法的代码吗?请确保将异常和内部异常的文本放在问题的主体中(而不仅仅是图像中)。内部异常似乎告诉您某些内容不是有效值。您看到了吗?将
ArgumentOutOfRangeException
添加到Visual Studio异常中断列表中。使用
Ctrl+Alt+E
键盘快捷键或
Debug
菜单。然后重新运行测试,它应该在异常发生时中断。它似乎试图用超出范围的值设置窗体属性。通常,使用Invoke()是一种非常糟糕的做法,只有在需要其返回值时才真正需要它。改用BeginInvoke(),现在异常可以调试了。我还没有试过你的代码。您能否在检查以下内容后报告结果:1)在调用之前检查“代理”的值2)检查调用行的运行次数
An unhandled exception of type 'System.ArgumentOutOfRangeException' occurred in System.Windows.Forms.dll

Additional information: Value of '1' is not valid for 'Value'. 'Value' should be between 'Minimum' and 'Maximum'.