c# - Asp.net - Changing Textbox field into label in gridview at code behind -


<itemtemplate>     <asp:textbox id="q1" runat="server" text='<%# bind("q1") %>'></asp:textbox> </itemtemplate> . . . <itemtemplate>     <asp:textbox id="q2" runat="server" text='<%# bind("q2") %>'></asp:textbox> </itemtemplate> 

i have page fields textbox , change of them label based on condition in code behind.

for example if window_name='q2' --> make q2 q3 q4 textbox , q1 label if window_name='q3' make q3 , q4 textbox q1 , q2 label

btw, i'm not using edit/select gridview modes made bulk update gridview (one button update rows)

i'm trying sample of 2 controls , sample grid view id 'gridview1' here, alter according code:

you either have labels created instead of showing text box in code behind or create both textboxes , labels , show them when needed.

also instead of doing in page_load function in 'rowdatabound' event of gridview , bind gridview each every time post done.

aspx code:

<itemtemplate>       <asp:textbox id="q1" runat="server" text='<%# bind("q1") %>'></asp:textbox>       <asp:label id="label1" runat="server" text='<%# bind("q1") %>' visible="false">       </asp:label> </itemtemplate> 

.....

<itemtemplate>       <asp:textbox id="q2" runat="server" text='<%# bind("q2") %>'></asp:textbox>       <asp:label id="label2" runat="server" text='<%# bind("q2") %>' visible="false">       </asp:label> </itemtemplate> 

code behind:

protected void page_load(object sender, eventargs e)         {             //bind grid view             gridview1.databind();         }  protected void gridview1_rowdatabound(object sender, gridviewroweventargs e)             {                 int rowindex = e.row.rowindex;                //first fetch textboxes , labeles                  textbox textboxq1 = gridview1.rows[rowindex].findcontrol("q1") textbox;                 textbox textboxq2 = gridview1.rows[rowindex].findcontrol("q2") textbox;                  label label1 = gridview1.rows[rowindex].findcontrol("label1") label;                 label label2 = gridview1.rows[rowindex].findcontrol("label2") label;                  if (window_name.equals("q2"))                 {                     //set 'visiblity' 'true' label want show. sample 1 below                     label2.visible = false;                     //set 'visibilty' 'false' text boxes want hide. sample 1 below                     textboxq2.visible = false;                 }             } 

let me know in case of queries.


Comments

Popular posts from this blog

javascript - jquery or ashx not working -

opencv - DataType<cv::detail::deriv_type>::depth what is it used for -

python 3.x - Mapping specific letters onto a list of words -