繁体   English   中英

PictureBox不加载并显示到窗体

[英]PictureBox not loading and displaying to the form

我不明白为什么这不向表单显示新的PictureBox:

private void Form1_Load(object sender, EventArgs e)
        {
            generateTable();
        }
        public void generateTable()
        {
            //setting up the background tiles
            PictureBox setup = new PictureBox();
            setup.Width = 100;
            setup.Height = 100;
            setup.Location  = new Point(100,100);
            setup.Image = new Bitmap(Application.StartupPath+@"\BlankArea.png");
            setup.Visible = true;
            this.Controls.Add(setup);
        }

它确实找到了图像(在另一个图片盒中进行了测试)。

如果通过VisualStudio运行分配,则exe项目的bin \\ Debug文件夹中的图像BlankArea.png会保留蜜蜂。

您的代码对我有用。

您确定通过设计器将Form1_Load事件回调绑定到Form1吗?

另外,您是否检查过图像还可以? 尝试将“设置”的背景色设置为突出的颜色,例如红色。

正如@TaW所建议的那样,局部答案是正在创建Picturebox,并将其添加到表单本身后面。 使用以下代码对我来说很完美!

//Apply the correct icon
if (icon != MessageBoxIcon.None)
{
    PictureBox pbIcon = new PictureBox();

    pbIcon.SizeMode = PictureBoxSizeMode.AutoSize;
    switch (icon)
    {
        case MessageBoxIcon.Asterisk:
            pbIcon.Image = SystemIcons.Asterisk.ToBitmap();
            break;
        case MessageBoxIcon.Question:
            pbIcon.Image = SystemIcons.Question.ToBitmap();
            break;
    }
    pbIcon.Location = new Point(0, 0);

    this.Controls.Add(pbIcon);
    pbIcon.BringToFront();
}

在这种情况下, icon为...

MessageBoxIcon icon = MessageBoxIcon.Question;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM