2

我一直在 ASP.NET 中创建几个自定义控件 - 主要用于练习和更深入地了解该语言。

我一直在摆弄一个按钮,但似乎无法让它处理自己的 OnClick 事件。谁能帮我吗?

public class CustomButton : System.Web.UI.WebControls.Button
{
    private string href = "";

    public CustomButton(string name = "Custom Button", string link = "~/errors/404.aspx", string css = "custom_button")
    {
        this.Text = name;
        this.href = link;
        this.CssClass = css;
        //this.OnClick += redirect;
        this.Attributes.Add("OnClick", "redirect");
    }
    protected void redirect(object sender, EventArgs e)
    {
        // I want this function to redirect the user to another page.
    }
}
4

3 回答 3

2

您应该覆盖 OnClick 方法:

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclick.aspx

OnClick 方法还允许派生类在不附加委托的情况下处理事件。这是在派生类中处理事件的首选技术。

于 2013-09-07T10:19:54.883 回答
0
this.OnClick+= redirect(sender,e);

试试看?

于 2013-09-07T10:18:47.073 回答
0

如果你想调用一个 javascript 函数,你可能想试试这个:

this.OnClientClick = "Function()";
于 2013-09-07T10:20:44.213 回答