日期:2014-05-18  浏览次数:20729 次

Panel 透明这句无效! 解决送分
panel1.BackColor = Color.FromArgb(65, 204, 212, 230);
 panel 半透明在button 上面 可以看到 panel下的button 以及文字 这样的效果

------解决方案--------------------
Panel对应的控件就是div
filter:alpha(opacity=90);
试试这个
------解决方案--------------------
我也想知道
------解决方案--------------------
我自己也没有做过这方面的项目,经过试验,感觉如果是 .NET 2.0 及以下,需要重载透明控件所在的那个容器(父控件),让其负责所有子控件的 Alpha Blend(透明混合)绘制,而不是简单地重载某个控件的 OnPaintBackgroud() 绘制其自己的透明背景。我怀疑微软出于效率考虑,只是依次绘制各控件没被其他控件盖住的部分,而没有费心去计算窗体上某个点是 70% 的下层控件颜色加 30% 的上层控件颜色(假设下层控件不透明度为 1,上层控件的不透明度为 0.3)。
我相信 .NET 3.0 WPF 的引入可以比较轻松地解决这类问题,直接使用类库中的控件应该就可以了。