C# Winform 变相实现背景透明
2016-08-30 14:51
267 查看
C# Winform 变相实现背景透明
本人在写一个C# Winform项目时,窗体背景使用了背景图,但是窗体上的部分控件不支持背景透明,这样显得有些不好看,然后在Google时发现如下变相实现背景透明的方法。但是有几点使用要求:
A. 主窗体或父容器等使用了背景图
B. 需要透明的控件支持背景图
C. 可能还有其他要求,暂未发现
实现代码
// 以下代码中,frm为主窗体,lv为需要透明的空间 // 封装一个图像对象,该对象即主窗体或父容器背景图片 Bitmap bmp = new Bitmap(this.BackgroundImage, this.Width, this.Height); // 绘制矩形,定义你需要截取的图像起始位置和宽高 Rectangle r = new Rectangle( 4000 lv.Left, lv.Top, lv.Width, lv.Height); // 按矩形尺寸和起始位置截取bm的一部分 bmp = bmp.Clone(r, System.Drawing.Imaging.PixelFormat.Undefined); // 把截取到的图片设置为需要透明的控件背景,达到与主窗体背景完美契合的效果 lv.BackgroundImage = bmp;
如果是不支持背景透明的控件的话,那就用GDI+吧
相关文章推荐
- 实现C#WinForm透明背景
- C# WinForm中控件与背景透明+c# linklabel 去掉下划线的方法
- 背景透明的ListBox(C#.WinForm)
- C#中如何使用Winform实现炫酷的透明动画界面
- C# WinForm 自定义控件,DataGridView背景透明,TabControl背景透明
- C#实现Winform自定义半透明遮罩层
- 【转】C#实现Winform自定义半透明遮罩层
- 背景透明的ListBox(C#.WinForm)
- [转自:https://www.cnblogs.com/dskin/p/4606293.html] C# Winform实现炫酷的透明动画界面 做过.NET Winform窗体美化的人应该都很熟悉U
- C# WinForm中控件与背景透明
- C#实现透明背景的垂直Label控件
- C# WinForm实现Win7 Aero透明效果代码
- C#Winform 自定义透明按钮和单窗体模块化实现
- C# Winform中如何让PictureBox的背景透明
- C#实现Winform自定义半透明遮罩层
- C#实现Winform自定义半透明遮罩层
- C# winform如何设置ListBox背景图或者透明背景及边框色
- C# Winform实现炫酷的透明动画界面(转载)
- C# winform中,简单实现Listview.Subitem.BackColor.ForeColor改变字体颜色,Listview.Subitem.BackColor 改变背景
- C# Winform实现炫酷的透明动画界面