GridView 中 ImageButton 上的 PopUpExtender 问题 [英] PopUpExtender on ImageButton inside GridView problem
本文介绍了GridView 中 ImageButton 上的 PopUpExtender 问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的 asp.net 页面上有 GridView,该网格中的一列是 ImageButton(ID="imbReserve"的模板字段).单击该按钮时,我想显示 PopUp,但是当我放置 TargetControlId="imbReserve" 时,我收到错误消息无法找到 ID 为‘imbReserve’的控件".如何实现这一点,点击 Grid 内的按钮显示 PopUp ?
解决方案
看看这两篇文章,正好帮我解决了这个问题
第 1 条:更传统的方法
以下内容摘自上述文章
页面代码:
<内容模板><asp:GridView ID="gvCustomers" runat="server" AutoGenerateColumns="false"宽度="95%"><列><asp:TemplateField ><项目模板><asp:Button ID="btnViewDetails" runat="server" Text="Details" OnClick="BtnViewDetails_Click"/></ItemTemplate></asp:TemplateField><asp:BoundField DataField="customerid" HeaderText="ID"/><asp:BoundField DataField="公司名称" HeaderText="公司"/><asp:BoundField DataField="联系人姓名" HeaderText="姓名"/><asp:BoundField DataField="contacttitle" HeaderText="Title"/></列></asp:GridView></内容模板></asp:UpdatePanel><ajaxToolKit:ModalPopupExtenderID="mdlPopup" runat="server" TargetControlID="pnlPopup" PopupControlID="pnlPopup"CancelControlID="btnClose" BackgroundCssClass="modalBackground"/><asp:Panel ID="pnlPopup" runat="server" Width="500px" style="display:none"><asp:UpdatePanel ID="updPnlCustomerDetail" runat="server" UpdateMode="Conditional"><内容模板>[您的内容在这里]</内容模板></asp:UpdatePanel><div align="right" style="width:95%"><asp:按钮ID="btnSave" runat="server" Text="Save"/><asp:Button ID="btnClose" runat="server" Text="Close" Width="50px"/>
</asp:面板>
请注意,GridView 包含在更新面板中,Modal Extender 的目标控件 ID 与弹出控件 ID 相同.这是因为 ModalPopUp Extender 需要一个目标控件 ID,我认为这个解决方案比使用隐藏按钮更好.
现在了解背后的代码:
protected void BtnViewDetails_Click(object sender, EventArgs e){//对更新面板的内容做任何你需要的事情//更新详细信息面板中的内容this.updPnlCustomerDetail.Update();//显示模态弹出窗口this.mdlPopup.Show();}
第 2 条:使用客户端 Javascript
以下内容摘自上述文章
客户端Javascript