【问题标题】:trying to add/remove controls to a form尝试向表单添加/删除控件
【发布时间】:2011-01-01 22:52:34
【问题描述】:

请记住,我很菜鸟......

我要做的是在我的表单中添加“光点”。我有一个计算可以确定所有这些“光点”的位置,并绘制在图表上。解决方案确定坐标为“blipHours, blipAltitude”

我想在这些位置以某种方式在我的表单中添加小点。起初我打算创造一些东西作为我的“光点”,但后来我意识到我想要它太小以至于我可以使用一个带有我想要的背景颜色的空图片框(我知道这不是最好的方法但我对此还是很陌生)。

我已经创建了将添加 blip 的代码

                    PictureBox blip = new PictureBox();
                    blip.Location = new Point(blipHours, blipAltitude);
                    blip.Size = new Size(6, 6);
                    blip.BackColor = System.Drawing.Color.Lime;
                    blip.Text = "";
                    blip.Name = callsign;
                    this.Controls.Add(blip); 

它添加了 blip,但它总是将它添加到其他控件之下。有没有办法让它在其他所有内容之上添加新的 blip 以使其可见?

我的第二个问题是如何删除通过单击按钮一次创建的所有 blip?

【问题讨论】:

  • 指出您正在谈论的编程语言会很有礼貌和有帮助。标签将是这个的理想场所。

标签: c# dynamic controls add


【解决方案1】:

nobugz 的替代方法是通过 Form.Controls.SetChildIndex 方法更改控件的 Z 顺序:

this.Controls.Add(blip);
this.Controls.SetChildIndex(blip, 0);

【讨论】:

    【解决方案2】:

    您可以使用 .AddAt 设置其在控件列表中的位置。

    【讨论】:

    • 从未使用过 addAt... 所以它看起来像这样:this.Controls.AddAt(1,blip);
    • 或者甚至是 Visual Studio(或 MSDN 在线)中的 help - 在某种程度上它相当全面...
    猜你喜欢
    • 2017-02-02
    • 1970-01-01
    • 2012-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-14
    相关资源
    最近更新 更多