私が見つけた最善のアプローチは、開発者が自分のモジュールにプレースホルダコントロールを使用することができます「Dynamically Loaded Controls」
た:
<asp:PlaceHolder id="phDynamicPlaceHolder" runat="server"></asp:PlaceHolder>
をし、動的プレースホルダにコントロールをロードします。
Select Case Me.rblDynamicControl.SelectedValue
Case 1
DynamicPage = DotNetNuke.Common.ResolveUrl(Me.TemplateSourceDirectory & "/DynamicControls/control1.ascx")
Case 2
DynamicPage = DotNetNuke.Common.ResolveUrl(Me.TemplateSourceDirectory & "/DynamicControls/control2.ascx")
End Select
Dim objModule As Entities.Modules.PortalModuleBase = CType(Me.LoadControl(DynamicPage), DotNetNuke.Entities.Modules.PortalModuleBase)
If Not objModule Is Nothing Then
objModule.ModuleConfiguration = Me.ModuleConfiguration
phDynamicPlaceHolder.Controls.Add(objModule)
End If