创建此类并对其进行编译之后,要在 ASP.NET Web 应用程序中使用它,应首先将其添加到 Web 应用程序的 References 文件夹中。然后,要 使用它来代替 HtmlForm 类,做法是在 ASP.NET 网页的顶部添加以下内容:
代码
namespace
ActionlessForm
{
public class Form : System.Web.UI.HtmlControls.HtmlForm
{
protected override void RenderAttributes(HtmlTextWriter writer)
{
writer.WriteAttribute( " name " , this .Name);
base .Attributes.Remove( " name " );
writer.WriteAttribute( " method " , this .Method);
base .Attributes.Remove( " method " );
this .Attributes.Render(writer);
base .Attributes.Remove( " action " );
if ( base .ID != null )
writer.WriteAttribute( " id " , base .ClientID);
}
}
}
{
public class Form : System.Web.UI.HtmlControls.HtmlForm
{
protected override void RenderAttributes(HtmlTextWriter writer)
{
writer.WriteAttribute( " name " , this .Name);
base .Attributes.Remove( " name " );
writer.WriteAttribute( " method " , this .Method);
base .Attributes.Remove( " method " );
this .Attributes.Render(writer);
base .Attributes.Remove( " action " );
if ( base .ID != null )
writer.WriteAttribute( " id " , base .ClientID);
}
}
}
<%
@ Register TagPrefix
=
"
skm
"
Namespace
=
"
ActionlessForm
"
Assembly
=
"
ActionlessForm
"
%>
< form runat ="server" ></ form >
//替换为:
< skm:Form id ="Form1" method ="post" runat ="server" ></ skm:Form >
< form runat ="server" ></ form >
//替换为:
< skm:Form id ="Form1" method ="post" runat ="server" ></ skm:Form >