HtmlGenericControl来自静态方法的错误
本文关键字:错误 静态方法 HtmlGenericControl | 更新日期: 2023-09-27 18:06:27
我正在使用Bootstrap警报,我正试图从代码后面的静态方法更改警报类,但我在尝试这样做时遇到错误,这是:
非静态字段需要对象引用。
我对这个很陌生,所以任何帮助都会非常感激
aspx.cs:
public static void alert()
{
wallboardAlert.Visible = alertVisable;
wallboardAlert.Attributes["class"] = alertClassType;
}
是
<div class="" id="wallboardAlert" runat="server">
<h1 id="wallboardAlertTitle" runat="server"><strong></strong></h1>
<h4 id="wallboardAlertBody" runat="server"></h4>
</div>
您可以定义一个静态变量来保存表单的当前实例:
private static MyFormClassName currentForm = null; // Use the real class name
protected override void OnInit(EventArgs e)
{
currentForm = this;
base.OnInit(e);
}
静态函数可以使用该变量访问表单及其控件:
public static void alert()
{
if (currentForm != null)
{
currentForm.wallboardAlert.Visible = currentForm.alertVisable;
currentForm.wallboardAlert.Attributes["class"] = currentForm.alertClassType;
}
}
请注意,只有在调用静态函数时存在表单的实例时才会起作用。