我有一个自定义表单定义如下:
internal class DropDownForm : System.Windows.Forms.Form
{
public DropDownForm(bool needShadow)
{ ... }
}
我需要根据传递给重写的CreateParams成员中的表单构造函数的need shadow参数启用表单阴影-如下所示:
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
if (needShadow)
cp.ClassStyle |= CS_DROPSHADOW;
return cp;
}
}
问题是我无法访问
needShadow
传递给
在这个
CreateParams
. 这个
创建参数
在第一条语句之前执行
以我的定制形式
,我无法缓存
传递给表单字段中的表单构造函数以在以后使用它的值
.
为了解决这个问题,我可以把这个
参数转换为
静态特性
在创建窗体之前设置它,并在重写的
创建参数
不是个好办法
因为我的应用程序可以创建此表单的多个实例,每个实例都有自己的
需求阴影
在WinForms.NET中有解决这个问题的方法吗?