我有一个自定义的ASP.NET控件(.ascx文件)。 此控件包含一些标签/文本框/等。以及“确定”和“取消”按钮。
我想使用AJAX Control Toolkit ModalPopup控件弹出我的自定义控件,让用户与它进行交互,完成后按确定/取消。
ModalPopup控件具有OkControlID
和CancelControlID
属性,可以告诉弹出窗口何时关闭。
如何在自定义控件中引用“确定/取消”按钮?
我尝试向我的控件添加属性,返回按钮然后使用点符号,但这似乎不起作用。以下是基本概要:
自定义控制代码(部分):
public Button OkButton
{
get { return this.btnOk; }
set { }
}
主页:
<!-- This button should trigger the popup -->
<asp:Button ID="btnEdit" runat="server" Text="Edit" />
<!-- AJAX Control Toolkit ModalPopup control ( -->
<asp:ModalPopupExtender
ID="btnEdit_ModalPopupExtender"
runat="server"
TargetControlID="btnEdit"
PopupControlID="ctlBasic"
OkControlID="ctlBasic.OkButton" >
</asp:ModalPopupExtender>
<!-- This is my custom control that should be popped up -->
<uc1:ctlBasic ID="ctlBasic" runat="server" />
我的目标是能够插入我的自定义控件,而无需父母提供任何其他代码。
任何帮助将不胜感激。谢谢。
答案 0 :(得分:0)
不要让属性返回Button
,而是让它返回按钮的ID,如下所示。
public String OkButtonID
{
get
{
return this.btnOk.ID;
}
}
然后在modalpopupextender的aspx
标记中进行更改,如下所示。
<!-- AJAX Control Toolkit ModalPopup control ( -->
<asp:ModalPopupExtender
ID="btnEdit_ModalPopupExtender"
runat="server"
TargetControlID="btnEdit"
PopupControlID="ctlBasic"
OkControlID="ctlBasic.OkButtonID" >
</asp:ModalPopupExtender>
值得一试!
答案 1 :(得分:0)
OKControlID
和CancelControlID
并非真正需要。如果您想指定它们,可以使用下划线,YourUserControlID_ButtonIDInUserControl
。
请注意,您无需公开控制用户。