使用图像会导致奇怪的白框周围

时间:2013-02-22 16:57:54

标签: c# winforms button

我试图用图像作为按钮在C#中创建一个按钮,我真的不想使用图片框,因为我需要按钮的“标签”位,因为按钮的文本不在图像,这就是它的样子

Play button image

如果有人可以帮我修复那个白框,我们将不胜感激,谢谢!

编辑:我找到了导致它的原因但仍无法修复:(实际表单上的BackColor是白色来自哪里,但你不能将表单的BackColor设置为Transparent:/

3 个答案:

答案 0 :(得分:0)

我认为Background.Color = Transparent应该在WinForms中修复它。

<强>更新
如果您已将边框和背景属性设置为透明,请仔细检查实际图形中的白色边框是否透明?

答案 1 :(得分:0)

您的图片必须具有透明背景。另见@ IAbstract的建议。

答案 2 :(得分:0)

当我回答here删除边框时,您应将FlatAppearance.BorderColor设置为透明。完全删除边框的整个代码如下:

customButton.TabStop = false;
//it's the best thing set flatstyle to flat when dealing with a custom button
customButton.FlatStyle = FlatStyle.Flat; 
customButton.FlatAppearance.BorderSize = 0;
//set the border color to transparent by setting the alpha to 0 (it doesn't support Color.Transparent)
customButton.FlatAppearance.BorderColor = Color.FromArgb(0, 0, 0, 0);