0

我希望能够在表单中添加一些进度条(进度条的数量可能因用户而异)。

我编写了这段代码来添加 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);

当我运行此代码时,我得到一个 Exception: "Object reference not set to an instance of an object."。困扰我的是,当我使用 IDE 查看进度条和 flowLayoutPanel 时,它们都不为空。我做错了什么?

4

2 回答 2

4

我猜flowLayoutPanel.Container是空的。我想你想要

flowLayoutPanel.Controls.Add(progressbar);
于 2012-12-18T20:57:57.330 回答
1
progressbar.Show();

这条线不应该是必要的

你以前放过这段代码InitializeComponents吗?thenflowLayoutPanel为 null,因为在此函数中,所有表单元素都已初始化

然后,子元素在FlowLayoutPanel.Controls,而不是容器

于 2012-12-18T20:56:38.933 回答