C#更改按钮的图像只需将新图像粘贴到旧图像的顶部即可

时间:2011-03-24 09:45:52

标签: c# winforms image visual-studio-2010

我正在尝试在不同情况下更改按钮的图像。 它唯一能做的就是在旧的(更宽的)图像上添加新的(更小的)图像。如何确保清除旧图像。我找不到button.image.clear之类的东西。

if (Global.van_zoek)
        {
            btnterug.BackgroundImage = ((System.Drawing.Image)(Properties.Resources.ZoekBedrijf2));
        }
        else if (!diftext)
        {
            btnterug.BackgroundImage = ((System.Drawing.Image)(Properties.Resources.AlleBedrijven2));
        }
        else if (_Prparent != null)
        {
            btnterug.BackgroundImage = ((System.Drawing.Image)(Properties.Resources.InfoContact2));
        }
        else
        {
            btnterug.BackgroundImage = ((System.Drawing.Image)(Properties.Resources.InfoProject2));
        }    

http://img225.imageshack.us/i/imageprobl.jpg/

4 个答案:

答案 0 :(得分:2)

//Change old image to null
btnterug.BackgroundImage = null;
//Load New Image
btnterug.BackgroundImage = ((System.Drawing.Image)(Properties.Resources.InfoProject2)); 

答案 1 :(得分:1)

尝试使用invalidate方法:

button2.Invalidate();

答案 2 :(得分:0)

您可以在将源更改为新图像之前将其设置为null。

答案 3 :(得分:0)

您是否对Button.ImageButton.BackgroundImage感到困惑?