Search code examples
c#asp.netgridviewdatagridviewaspxgridview

Gridview Label Appear in a Selected Row


I has a Gridview called Gridview1 which is binded to a datasource. and I have a ItemTemplate at Column 5 within it contain a - Linkbutton called search - Label called lbl_password , visible press to true - Label called txt_password , visible set to false

code in done in asp.net webForm , .aspx

when link button pressed this function will get the ID at cell 1 in the row tat button clicked

GridViewRow grdrow = (GridViewRow)((LinkButton)sender).NamingContainer;
string fieldID = grdrow.Cells[1].Text;

Now i want to know how can I make the txt and lbl become visible when the button pressed


Solution

  • I am assuming you mean when link button pressed you want to make the text and label from the same row to be visible.For that purpose you can just use the findcontrol method on gridview row to find the control you need.

    If that's what you want then in link button click event you can do as follow,

       protected void lnkButton_Click(object sender, EventArgs e)
        {
            GridViewRow grdrow = (GridViewRow)((LinkButton)sender).NamingContainer;
            ((TextBox)grdrow.FindControl("yourtextboxID")).Visible = true;
            ((Label)grdrow.FindControl("yourLabelID")).Visible = true;
        }
    

    Here is more info on findcontrol.