winform控件透明问题

winform控件透明问题

2008-3-12 14:26:59
最近做一个WinForm的程序,需要为控件添加透明效果,即从上面能够看到下面被覆盖的控件,

首先先从System.Windows.Forms.Panel 继承一个自定义控件,然后在控件的构造函数中添加下面的代码 :
SetStyle(ControlStyles.UserPaint, true);
SetStyle(ControlStyles.SupportsTransparentBackColor, true);
this.BackColor = Color.Transparent;

其中调用SetStyle函数进行设置ControlStyles.SupportsTransparentBackColor为true

然后设置控件的背景颜色为透明Color.Transparent.

把设计好的控件添加到WINFORM中来,发现自定义控件可以在其他控件上面时可以变成透明,但是如果放在图片控件上面却没有透明效果,为了这个问题,研究了半天,后来终于发现只需要简单的设置一下控件的parent属性为图片控件即可.代码如下 :

Panel21.Parent = pictureBox1;

分类:dotnet | 185人阅读 | 0人发表评论: | tag:
评论

我要发表评论

名称:
Email:
内容: