我有一个.ascx文件,我可以使用
加载没问题<uc1:EL ID="EL1" BusinessID="8" runat="server" />
BusinessID是公共财产的地方。
Public Property BusinessID As Integer
Set(ByVal value As Integer)
_BusinessID = value
End Set
Get
Return _BusinessID
End Get
End Property
我可能需要多次将此ascx文件加载到具有不同BusinessID变量值的占位符中。
这样做的等效LoadControl方式是什么?
答案 0 :(得分:2)
首先,您需要创建用户控件的实例,然后获取占位符的句柄。然后你可以添加一个到另一个。例如:
'get place holder
Dim getPh As New PlaceHolder
getPh = CType(Me.FindControl("myPlaceHolder"), PlaceHolder)
'get user controls
Dim newUserControl As New user_controls_myControlName
newUserControl = CType(LoadControl("~/user_controls/myControlName.ascx"), user_controls_myControlName)
getPh.Controls.Add(newPortlet)
创建用户控件的实例后,您可以访问其所有属性,包括BusinessID,您可以随意分配它。
忘了一件事,你需要在你的ascx文件的客户端代码中添加一个引用,如下所示:
<%@ Reference Control="~/user_controls/myControlName.ascx"%>