如何设置Panel透明
这个问题很苦恼,就是父窗体有一个Panel,Panel里面添加的是一个子窗体。
我现在想移动子窗体时 把Panel最大化覆盖整个父窗体,设置Panel为透明。
不要告诉我
panel.BackColor = Color.FromArgb(65, 204, 212, 230);
或者Transparent
抑或
private void pnlNavigate_Paint(object sender, PaintEventArgs e)
{
base.OnPaint(e);
// 背景设成透明还是必要的,控件上的图形在后面画
pnlNavigate.BackColor = Color.Transparent;
Rectangle rect = e.ClipRectangle;
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias;
// 画控件上的图形,这里以一个线性渐变的图为例。
// 注意此处,128是透明度,范围是0-255。
// 如果控件上放一个不透明的图片,则须先将其处理为透明的。
LinearGradientBrush baseBackground = new LinearGradientBrush(rect,
Color.FromArgb(128, 191, 191, 191),
Color.FromArgb(128, 255, 255, 255),
270, false);
e.Graphics.FillRectangle(baseBackground, rect);
e.Graphics.Flush();
}
这些对我都无效