【发布时间】:2015-04-08 05:41:57
【问题描述】:
考虑以下示例。这是通过设置TransparencyKey 属性来完成的:
public Form()
{
this.InitializeComponent();
this.BackColor = Color.Fuscia;
this.TransparencyKey = this.BackColor;
}
我真正想要做的是类似于DrawThemeParentBackground 函数的行为(方便地以DrawParentBackground 包装在.NET 中),但是这似乎不适用于顶级表单(仅控件)。
我尝试使用TransparencyKey 行为以及覆盖OnPaint 方法:
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(128, 255, 0, 0)), this.ClientRectangle);
}
结果:
问题:
如何在顶级表单的 ClientRectangle 下方绘制内容?
【问题讨论】: