Dispose()导致可怕的Visual Studio“无法将文件从obj复制到bin”错误?

时间:2010-12-27 14:27:08

标签: c# .net visual-studio

在搜索了许多解决方案后,我发现控件的被覆盖的Dispose方法导致可怕的VS错误“无法将文件从obj复制到bin / ...”(在我的情况下)

如果包含此Dispose方法,VS每次进行代码更改时都会抛出错误并尝试重建。如果被覆盖的dispose方法被注释掉,问题就会消失......

这里发生了什么?我做错了什么,或者这是Visual Studio功能吗?

public class StyledLabel : Control
{
    private ImageList imageList;

    public ImageList ImageList
    {
        get { return imageList; }
        set { imageList = value; }
    }

    public StyledLabel()
    {
        SetStyle(ControlStyles.ResizeRedraw, true);
        SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
        SetStyle(ControlStyles.UserPaint, true);
    }        

    // This method causes dreaded VS Error ??
    protected override void Dispose(bool disposing)
    {
        if (disposing)
        {
            if (imageList != null)
            {
                imageList.Dispose();
            }
        }
        base.Dispose(disposing);
    }
}

编辑:遗憾的是我再也无法重现错误了,所以我现在更加迷失了......但是,错误信息消失了......

1 个答案:

答案 0 :(得分:1)

在处理之前尝试清除ImageList。