代码分析在设计器代码中发现CA2213错误(Code Analysis finds CA2213 error in designer code)

当我在c#winforms应用程序上运行Code Analysis时,我收到以下警告;

应该处理CA2213一次性字段'LogEntryForm'包含IDisposable类型的字段'LogEntryForm._changeValuesNavigator':'DynamicBindingNavigator'。 更改“LogEntryForm”上的Dispose方法以在此字段上调用Dispose或Close。 UI LogEntryForm.Designer.cs 15

 有问题的代码是

 partial class LogEntryForm
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

上述代码有可能放在form的design.cs中,解决办法:

将design.cs的这部分代码删除

然后在form窗体代码中添加如下:

  public void Dispose()
        {

            Dispose(true);
            GC.SuppressFinalize(this);


        }
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (BoldShowFont != null)
                {
                    BoldShowFont.Dispose();

                }
                if (BoldShowFontForAuto != null)
                {
                    BoldShowFontForAuto.Dispose();

                }
                if (components != null)
                    components.Dispose();

            }
            base.Dispose(disposing);
        }
       

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HappyGirl快乐女孩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值