This is a migrated thread and some comments may be shown as answers.

Click event of Dynamic Link button not firing

3 Answers 239 Views
Grid
This is a migrated thread and some comments may be shown as answers.
jeevitha
Top achievements
Rank 1
jeevitha asked on 09 Dec 2009, 07:56 AM
Hi,

I am dynamically creating linkbutton in the item data bound event of the rad grid. i have added click event for link button. but the thing is the Click event not at all firing when i click the linkbutton. But the dynamic buttons are get vanished after the click. Pls give me the solution. its very urgent. my sample code is

 

foreach (MemberDetail memberDetail in newShopper.MemberDetails)

 

{

linkMemberName =

new LinkButton();

 

tdMember =

new HtmlTableCell();

 

tdEditMember =

new HtmlTableCell();

 

trowMember =

new HtmlTableRow();

 

linkMemberName.ID =

"id1";

 

linkMemberName.Text = memberDetail.FirstName;

linkMemberName.CommandArgument = memberDetail.ID.ToString();

linkMemberName.Click +=

new EventHandler(linkMemberName_Click);

 

tdMember.Controls.Add(linkMemberName); 

 

tblMemberDetails.Controls.Add(trowMember);

}



 

void linkMemberName_Click(object sender, EventArgs e)

 

{

 

throw new NotImplementedException();

 

}


Thanks,
Jeevitha 

3 Answers, 1 is accepted

Sort by
0
Shinu
Top achievements
Rank 2
answered on 09 Dec 2009, 08:38 AM
Hello Jeevitha,

Have you tried adding the control in ItemCreated event of grid?

-Shinu.
0
jeevitha
Top achievements
Rank 1
answered on 09 Dec 2009, 08:39 AM
No I didnt tried... let me try and reply you
0
jeevitha
Top achievements
Rank 1
answered on 09 Dec 2009, 08:47 AM
Hi Shinu,
I must need it in Item Data Bound Event only. I need to find a control in griddataitem and access the value. If i convert into itemcreated  then getting object reference error in the highlighted line . Its not finding my control Here is my whole function.

protected void gridViewStudentList_ItemDataBound(object sender, GridItemEventArgs e)
        {
                if (e.Item.ItemType == GridItemType.AlternatingItem || e.Item.ItemType == GridItemType.Item)
                {
                    GridDataItem gridDataItem = (GridDataItem)e.Item;
                    HiddenField hiddenFieldShopperID = ((HiddenField)gridDataItem.FindControl(UIConfigurationConstant.HIDDENFIELDSHOPPERID));
                    Shopper newShopper = ((List<Shopper>)this.Controller.State.Shoppers).Find(delegate(Shopper shopper)
                    {
                        return hiddenFieldShopperID.Value == shopper.ShopperID;
                    });
                    HtmlTableRow trowMember;
                    HtmlTableCell tdMember;
                    HtmlTableCell tdEditMember;
                    LinkButton linkMemberName;
                    LinkButton linkEditAditionalInfo;
                    foreach (MemberDetail memberDetail in newShopper.MemberDetails)
                    {
                        linkMemberName = new LinkButton();
                        tdMember = new HtmlTableCell();
                        tdEditMember = new HtmlTableCell();
                        trowMember = new HtmlTableRow();
                        linkMemberName.ID = "id1";
                        linkMemberName.Text = memberDetail.FirstName;
                        linkMemberName.CommandArgument = memberDetail.ID.ToString();
                        linkMemberName.Click +=new EventHandler(linkMemberName_Click);
                        tdMember.Controls.Add(linkMemberName);
                    }
                }

Thanks,
Jeevitha
Tags
Grid
Asked by
jeevitha
Top achievements
Rank 1
Answers by
Shinu
Top achievements
Rank 2
jeevitha
Top achievements
Rank 1
Share this question
or