我有一个应用程序,我在图像上使用了单选按钮,因此单选按钮中的白色背景看起来非常糟糕。
那么有没有办法可以删除那个白色背景?
答案 0 :(得分:2)
仅将BackColor
设置为Color.Transparent
不足以摆脱RadioButton
周围的小边框。
您还需要为每个单选按钮调用以下代码,以确保背景确实透明
rbnTest.BackColor = Color.Transparent;
Point pos = this.PointToScreen(rbnTest.Location);
rbnTest.Parent = pibPicture;
rbnTest.Location = pibPicture.PointToClient(pos);
Source(不是真正的重复,但相似,因此不是标记为重复)
我建议将该代码重构为可重用的方法,这样就不会在整个项目中分散代码。
答案 1 :(得分:0)
找到控件类的构造函数。构造函数出现在控件的代码文件中。在C#中,构造函数是与控件同名且没有返回值的方法。
在构造函数中调用表单的SetStyle方法。
SetStyle(ControlStyles.SupportsTransparentBackColor, true);
添加以下行。这会将您的控件的BackColor设置为Transparent。
this.BackColor = Color.Transparent;
注意强> Windows窗体控件不支持真正的透明度。透明Windows窗体控件的背景由其父窗口绘制。
答案 2 :(得分:-1)
您可以使用RadioButton.BackgroundImage
或RadioButton.BackColor
属性。选择最适合你的那个