내 asp.net 응용 프로그램에서 ImageButton을 CSSImageButton이라는 ImageButton을 확장하는 WebControl으로 업데이트하고 있습니다. 렌더링 메소드를 오버라이드하여 CSS 스프라이트와 함께 작동하도록 만들었습니다. 나는 OnClick이 작동하고 OnClientClick을 얻을 수있었습니다. 그러나 일부 버튼에는 OnCommand가 있으며 무엇을해야 할지를 알 수 없습니다. 또한asp.net ImageButton을 CSHT 스프레드로 확장
public class CSSImageButton : ImageButton
{
public string DivClass { get; set; }
public CSSImageButton()
{
CssClass = "";
}
protected override void Render(HtmlTextWriter writer)
{
base.Render(writer);
}
public override void RenderBeginTag(HtmlTextWriter writer)
{
writer.Write("<div class=\"" + CssClass + " " + DivClass + "\">");
}
protected override void RenderContents(HtmlTextWriter writer)
{
writer.Write("<a id=\"" + this.ClientID + "\" title=\""+ this.ToolTip+"\"");
if (!String.IsNullOrEmpty(OnClientClick))
{
writer.Write(" href=\"javascript:void(0);\" OnClick = \"" + OnClientClick + "\"");
}
else
{
writer.Write(" href=\"javascript:" + this.Page.GetPostBackEventReference(this, "ButtonClick") + "\"");
}
writer.Write("\"></a>");
}
public override void RenderEndTag(HtmlTextWriter writer)
{
writer.Write("</div>");
}
}