ASP.NET How to show AjaxControlToolkit Modal Popup from CheckBox -


i need show ajaxcontroltoolkit modalpopupextender control, when user checks/unchecks checkbox control inside gridview templatefield.

-- updated on 24/05/2013

see final solution here...

we solved problem. decided post here complete solution , final code.

the gridview

<asp:gridview id="gvdocs" runat="server" cssclass="grid" autogeneratecolumns="false" allowpaging="true" allowsorting="true" onpageindexchanging="gvdocs_pageindexchanging" onsorting="gvdocs_sorting" onrowdatabound="gvdocs_rowdatabound"> <alternatingrowstyle cssclass="grid_row_alternate"/> <headerstyle cssclass="grid_header" /> <rowstyle cssclass="grid_row" /> <selectedrowstyle cssclass="grid_row_selected" /> <columns>     <asp:boundfield datafield="id"/>     <asp:boundfield datafield="column_a" sortexpression="column_a" headertext="column_a" />     <asp:boundfield datafield="column_b" sortexpression="column_b" headertext="column_b" />      <!-- templatefield checkbox , modalpopupextender controls -->      <asp:templatefield headertext="check" sortexpression="check_column">         <itemstyle horizontalalign="center"/>         <itemtemplate>             <asp:checkbox id="checkbox1" runat="server"/>              <!-- modal popup block -->              <asp:modalpopupextender id="modalpopupextender1" runat="server" backgroundcssclass="modalbackground" dropshadow="true" targetcontrolid="checkbox1" popupcontrolid="panmodalpopup" cancelcontrolid="cancelbutton"/>             <asp:panel id="panmodalpopup" runat="server" style="display:none; text-align:left; width:400px; background-color:white; border-width:2px; border-color:#40a040; border-style:solid; padding:10px;">                 sure?                 <br /><br />                 <div style="text-align:right;">                     <asp:button id="confirmbutton" runat="server" text="confirm" onclick="confirmbutton_click" commandargument='<%# databinder.eval(container.dataitem, "id") %>'/>                     <asp:button id="cancelbutton" runat="server" text="cancel"/>                 </div>             </asp:panel>         </itemtemplate>     </asp:templatefield> </columns> 

the code behind

protected void gvdocs_rowdatabound(object sender, gridviewroweventargs e) {     if (e.row.rowtype.equals(datacontrolrowtype.datarow))     {         // setting checkbox check reading state db         checkbox checkbox1 = (checkbox)e.row.findcontrol("checkbox1");         checkbox1.checked = databinder.eval(e.row.dataitem, "check_column").tostring() == "y"; // or other value works true/false     } }  protected void confirmbutton_click(object sender, eventargs e) {     string id = ((button)sender).commandargument; // id column value      // update check_column value on db or whatever want id...      binddata(); // method gridview databind after changes applied db } 

some things know

1) modalpopupextender1 control inside gridview templatefield because needs have access checkbox1 , click event. it's not best solution ever, works , not affect on performance if gridview not complicated , if paged.

2) in order catch confirmbutton click event, have remove okcontrolid property modalpopupextender control settings.

-- end

-- updated on 22/05/2013

then i need id of corresponding row make update on db.

-- end

this gridview

<asp:gridview id="gvdocs" runat="server" cssclass="grid" autogeneratecolumns="false" allowpaging="true" allowsorting="true" onpageindexchanging="gvdocs_pageindexchanging" onsorting="gvdocs_sorting" onrowdatabound="gvdocs_rowdatabound"> <alternatingrowstyle cssclass="grid_row_alternate"/> <headerstyle cssclass="grid_header" /> <rowstyle cssclass="grid_row" /> <selectedrowstyle cssclass="grid_row_selected" /> <columns>     <asp:boundfield datafield="id_documento" visible="false"/>     <asp:boundfield datafield="num_prot" sortexpression="num_prot" headertext="n. prot." />     <asp:boundfield datafield="date_prot" sortexpression="date_prot" headertext="data prot." />      ... other boundfields ...      <asp:templatefield headertext="da archiviare" sortexpression="da_archiviare">         <itemstyle horizontalalign="center"/>         <itemtemplate>             <asp:checkbox id="chkarchiviare" runat="server" autopostback="true" oncheckedchanged="chkarchiviare_checkedchanged"/>         </itemtemplate>     </asp:templatefield> </columns> 

and modalpopup block

<asp:toolkitscriptmanager id="toolkitscriptmanager1" runat="server"> </asp:toolkitscriptmanager>  <asp:modalpopupextender id="modalpopupextender1" runat="server" dropshadow="true" targetcontrolid="panmodalpopup" popupcontrolid="panmodalpopup" okcontrolid="btnconferma" cancelcontrolid="btnannulla" />  <asp:panel id="panmodalpopup" runat="server" style="display:none; width:400px; background-color:white; border-width:2px; border-color:black; border-style:solid; padding:20px;">     sure?     <br /><br />     <div style="text-align:right;">         <asp:button id="btnconferma" runat="server" text="conferma" onclick="btnconferma_click"/>         <asp:button id="btnannulla" runat="server" text="annulla" onclick="btnannulla_click" />     </div> </asp:panel> 

now, i want show modalpopup each time checkbox checked/unchecked , popup have show confirmation message 2 buttons: confirm , cancel. confirm have update on db , postback. cancel have hide popup without postback.

i know modalpopupextender listens onclick events. so, necessary need button, linkbutton, imagebutton, etc. or can want?

you right, listens onclick events, client-side ones, so, target control of extender can can click on, div or label.


Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -