我希望能够在表单中添加一些进度条(进度条的数量因用户而异)。
我已编写此代码以添加1个进度条:
ProgressBar progressbar = new System.Windows.Forms.ProgressBar();
progressbar.Name = "progressBar1";
progressbar.Size = new Size(280, 30);
progressbar.TabIndex = 9;
progressbar.Show();
flowLayoutPanel.Container.Add(progressbar);
当我运行此代码时,我得到一个异常:"Object reference not set to an instance of an object."
。
困扰我的是当我使用IDE查看它们时,progressbar和flowLayoutPanel都不为null。我做错了什么?
答案 0 :(得分:4)
我猜flowLayoutPanel.Container
为空。我想你想要
flowLayoutPanel.Controls.Add(progressbar);
答案 1 :(得分:1)
progressbar.Show();
这条线不应该是必要的
你把这段代码放在InitializeComponents
之前了吗?然后flowLayoutPanel
为null,因为在此函数中所有表单元素都已初始化
然后,子元素在FlowLayoutPanel.Controls
,而不是容器