Button.OnCommand + = new CommandEventHandler导致保护级别错误

jos*_*osh 4 c# asp.net

为什么以下代码会导致以下错误:

由于其保护级别,System.Web.UI.WebControls.Button.OnCommand(System.Web.UI.WebControls.CommandEventArgs)'无法访问

protected void btnSearch_Click(object sender, EventArgs e)
{
    ...
    UpdatePanel updatePanel;
    ...
    Button moreButton = new Button();
    moreButton.ID = "moreButton";
    moreButton.Text = "More";
    updatePanel.ContentTemplateContainer.Controls.Add(moreButton);
    moreButton.CommandName = "More";
    moreButton.CommandArgument = department.ID + "|department";
    moreButton.OnCommand += new CommandEventHandler(getMoreInfoCommand_Click);
    ...
    updatePanelList.Add(updatePanel);
}


protected void getMoreInfoCommand_Click(Object sender, CommandEventArgs e) 
{

}
Run Code Online (Sandbox Code Playgroud)

das*_*ght 7

你应该用

moreButton.Command += new CommandEventHandler(getMoreInfoCommand_Click);
Run Code Online (Sandbox Code Playgroud)

OnCommand是一种受保护的方法,同时Command也是一个公共事件.