您的位置:首页 > 编程语言 > C#

关于C#窗体的半透明,控件不透明的解决方案

2012-09-18 15:35 295 查看
关于窗体的这个问题,本人之前也非常困扰,现在问题刚解决,拿出来和大家分享下?

我的思路是用两个窗体叠加在一起,比如图层效果。废话不多说 贴代码
Form1 的load事件中show出Form2 具体代码:控件加在Form2中即可

Form2 form2 = null;
private void Form1_Load(object sender, EventArgs e)
{
form2 = new Form2();
form2.FormBorderStyle = FormBorderStyle.None;
form2.TopMost = true;
form2.Size = this.Size;
form2.Show();
this.LocationChanged += new EventHandler(Form1_LocationChanged);
}

void Form1_LocationChanged(object sender, EventArgs e)
{
try { form2.Location = this.Location; }
catch { }
}


form2属性设置:

TransparencyKey = Color.AliceBlue;
this.BackColor = Color.AliceBlue;


这个AliceBlue颜色可以自己换
然后效果是有了,但是会出现一个问题,任务栏可以明显看得见有两个窗体在运行

可以在子窗体加入

this.ShowInTaskbar = false;
完美解决 嘿嘿;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c# object 任务 null