私は、ユーザーコントロールからクリックイベントを発生させ、それを含むページで処理しようとしています。私が持っている問題は、ユーザーコントロールの 'imgstep1'ボタンをクリックすると、imgstep1_clickイベントの背後にあるコードがトリガされますが、 'btnHandler'イベントは常にnullです。したがって、それは親イベントを呼び出さない。EventHandlerがnullです
これに関するお手伝いをさせていただきます。
マイユーザーコントロールのコードは次のとおりです。
た.ascxコード:
<asp:ImageButton ImageUrl="./images/step1.gif"
ID="imgstep1" runat="server"
OnClick="imgstep1_Click"/>
.ascx.csコード:
public delegate void OnImageButtonClick();
public event OnImageButtonClick btnHandler;
protected void imgstep1_Click(object sender, ImageClickEventArgs e)
{
if (btnHandler != null)
btnHandler();
}
.aspxページのコード:
protected void Page_Load(object sender, EventArgs e)
{
ucStepHdr.btnHandler += new StepsHeader.OnImageButtonClick(ucStepHdr_btnHandler);
}
void ucStepHdr_btnHandler()
{
Response.Write ('test');
}
これはコード全体であるか、典型的な「リロード」タイプのブロック内に「+ = new ...」という行がありますか? –