Sae*_*ani 2 c# transparency picturebox winforms
可能重复:
PictureBox问题
我有一个TabPage托管一些自定义控件PictureBox.我在这里做的是绘制一些IC封装,用户可以点击它们的针脚来获取一些信息.用户可以将多个此图片框添加到标签页,并在标签页中移动它们.
我的问题是这个图片盒是透明的,只有当它们没有相互叠加时.在下图中,您会看到其中两个图片框已添加到标签页.标签页有蓝色背景,事实上,无论它有什么颜色都没关系,图片框将有不透明的区域对标签页透明:

但是,只要我将任何一个图片框移到另一个图片框上面,它就不再是透明的了:

这是生成raw的代码,Image我将在其上绘制:
//Setting up image area
Image = new Bitmap(requiredImageWidth, requiredImageHeight, PixelFormat.Format32bppArgb);
Image.MakeTransparent();
Run Code Online (Sandbox Code Playgroud)
其余的是默认设置我没有改变任何其他.您认为导致这种行为的是什么?
从这篇文章中,这是导致此行为的原因:
WinForms中的透明控件相对于其父级是透明的,而不是其他控件.WinForms中的透明度更像伪装而非真正的透明度.透明控件实际上不会让您通过表单看到它背后的控件.它要求其父母在"透明"控件上绘制自己的背景.这就是透明控件显示其背后的形式,但掩盖任何其他控件的原因.
这里有一个可接受的问题答案(PictureBox问题)
| 归档时间: |
|
| 查看次数: |
21877 次 |
| 最近记录: |