C# c中图片框上的透明按钮#

C# c中图片框上的透明按钮#,c#,button,picturebox,transparent,C#,Button,Picturebox,Transparent,我想在图片框上放置许多透明按钮。 我可以通过编程方式执行此操作,但所有按钮均为纯色背景。 是否可以制作具有透明背景的按钮组件,并将其显示在图片框上? 我想使用按钮来实现这一点,因为我必须让事件属于按钮 我看到了这篇文章,但我不能让它与按钮一起工作。我找到了解决办法 btn.FlatStyle = Windows.Forms.FlatStyle.Flat btn.FlatAppearance.BorderSize = 0 btn.FlatAppearance.MouseDownBackColor

我想在图片框上放置许多透明按钮。
我可以通过编程方式执行此操作,但所有按钮均为纯色背景。
是否可以制作具有透明背景的按钮组件,并将其显示在图片框上?
我想使用按钮来实现这一点,因为我必须让事件属于按钮


我看到了这篇文章,但我不能让它与按钮一起工作。

我找到了解决办法

btn.FlatStyle = Windows.Forms.FlatStyle.Flat
btn.FlatAppearance.BorderSize = 0
btn.FlatAppearance.MouseDownBackColor = Color.Transparent
btn.FlatAppearance.MouseOverBackColor = Color.Transparent
btn.BackColor = Color.Transparent

解决方案

picturebox上的按钮不支持颜色上的边框颜色。透明,您可以通过设置Argb颜色来解决此问题:

Color.FromArgb(0, 255, 255, 255); // transparent
将以下属性添加到picturebox上的按钮以执行此操作

btn.TabStop = false;
btn.FlatStyle = FlatStyle.Flat;
btn.FlatAppearance.BorderSize = 0;
btn.FlatAppearance.MouseDownBackColor = Color.FromArgb(0, 255, 255, 255);
btn.FlatAppearance.MouseOverBackColor = Color.FromArgb(0, 255, 255, 255);
btn.FlatAppearance.BorderColor = Color.FromArgb(0, 255, 255, 255);
btn.BackColor = Color.FromArgb(0, 255, 255, 255);

使用父属性