Событие не сработает в пользовательском контроле - PullRequest
0 голосов
/ 12 октября 2010

Я пытаюсь создать простой пользовательский элемент управления, в котором есть кнопка изображения на элементе управления вместе с меткой.

Проблема, с которой я сталкиваюсь, заключается в том, что кнопка изображения выглядит отлично вместе с указанными свойствами. Но почему-то, когда я нажимаю на кнопку изображения, это не генерирует событие щелчка. страница просто обновляется.

Может кто-нибудь сказать, пожалуйста, в чем ошибка ???

public override ControlCollection Controls
{
    get
    {
        EnsureChildControls();
        return base.Controls;
    }
}

protected override void RenderContents(HtmlTextWriter output)
{
    //CreateChildControls();
    AssociateValuesWithProperties();

    ibFirst.RenderControl(output);
    output.RenderEndTag();
}

protected override void CreateChildControls()
{
    Controls.Clear();

    // Set subcontrols behavior
    //adding the event handlers to the image buttons
    ibFirst.Click += new ImageClickEventHandler(ibFirst_Click);
}

private void AssociateValuesWithProperties()
{
    ibFirst.ImageUrl = FirstImageSrcNormal;
    ibFirst.AlternateText = FirstImageAltText;
    ibFirst.ToolTip = FirstImageAltText;
}

protected void ibNext_Click(object sender, ImageClickEventArgs e)
{
    this.CurrentPage++;
}

Спасибо.

1 Ответ

0 голосов
/ 13 октября 2010

Ах !! Я нашел решение своей проблемы.

в функции CreateChildControls () мы также должны добавить элементы управления в коллекцию элементов управления. как только я сделал это, код работал просто отлично.

спасибо

...