와우; 너무 빨리 썼다. 대답은 표준 WebControlAdapter가 Render() 메서드를 재정의하는 것입니다.이 메서드는 Validator 처리가 발생하는 곳입니다. 솔루션은 추상 System.Web.UI.Adapters.ControlAdapter를 서브 클래스 화하고 자신의 어댑터를 작성하는 것입니다 (실제로 비어있을 수 있음).
public class ValidatorAdapter : System.Web.UI.Adapters.ControlAdapter { }
public class FieldError : ValidatorAdapter
{
protected void RenderBeginTag(HtmlTextWriter writer)
{
writer.AddAttribute(HtmlTextWriterAttribute.Class, "fieldError");
writer.RenderBeginTag(HtmlTextWriterTag.Div);
}
protected override void Render(HtmlTextWriter writer)
{
RenderBeginTag(writer);
base.Render(writer);
RenderEndTag(writer);
}
protected void RenderEndTag(HtmlTextWriter writer)
{
writer.RenderEndTag();
}
}
하고, 찾아보기 파일이 추가 :
<adapter controlType="System.Web.UI.WebControls.BaseValidator"
adapterType="UI.ControlAdapters.FieldError"
/>