动态创建复选框时发生异常

本文关键字:异常 创建 复选框 动态 | 更新日期: 2023-09-27 18:25:22

以下是我在运行时创建复选框的代码:

if (reader.HasRows)
            {
                while (reader.Read())
                {
                   CheckBox xb = new CheckBox();
                   xb.Text = reader["AnalysisGroup"].ToString();
                   xb.Name = reader["AnalysisGroup"].ToString();
                   xb.SetBounds(100,50, 200, 10);
                   panel1.Controls.Add(xb);                        
                }
            }

当我运行此代码时,我得到一个异常:

对象引用未设置为对象的实例。

为什么会发生这种情况?我确信阅读器有行,我测试了问题是关于添加控制代码。

动态创建复选框时发生异常

myReader["AnalysisGroup"]可以为空,如下操作,

if (myReader["AnalysisGroup"] != DBNull.Value)
{
    string val = reader["AnalysisGroup"].ToString();
    CheckBox xb = new CheckBox();
    xb.Text = val;
    xb.Name = val;
    xb.SetBounds(100, 50, 200, 10);
    panel1.Controls.Add(xb);
}