设置图像时参数无效

时间:2012-08-03 12:50:37

标签: c# winforms image exception-handling .net-2.0

我正在许多计算机上运行.NET 2.0程序。在一个我有重复发生此错误,直到我重置应用程序。

 //line below was throwing the exception
 this.myButton.BackgroundImage = global::myNamespace.Properties.Resources.myImage;

例外:

 ExceptionType: ArgumentException
 Message: Parameter is not valid.
 Source: System.Drawing
 StackTrace:    at System.Drawing.Image.get_Flags()
     at System.Windows.Forms.ControlPaint.IsImageTransparent(Image backgroundImage)
      at System.Windows.Forms.Control.set_BackgroundImageLayout(ImageLayout value)

资源存在,重置后工作正常。任何人都可以提供有关可能发生的任何见解吗?

2 个答案:

答案 0 :(得分:1)

我建议您使用Process Monitor来检查文件的实时活动,以及哪些进程可能会锁定它。添加过滤器,其中Path是图像/资源文件的名称;这应该可以快速显示是否有任何东西在背后隐藏文件。

答案 1 :(得分:0)

是的,这是6岁的帖子!今天遇到了同样的错误,修复花费的时间远远超过了我应有的时间。实际上,我是在启动时配置图像控件的,因此我显然无法在运行时调整其背景图像。如果您在这里,也可以仔细检查一下。