是否可以开发一个DNN模块,允许其他模块放入其中?
换句话说,我想把“Panes”放在我的模块中,让它们的工作方式基本上与Panes包含在皮肤中的方式相同。
这可能吗?如果是这样,是否有任何样本,文章或文件可以提供帮助?
附注:我目前使用Chistoc的模块开发模板开发模块。
答案 0 :(得分:1)
在模块中设置了窗格后,可以使用Page.LoadControl方法将控件加载到窗格中。在模块设置中,您可以在哪个窗格中指定所需的模块,并从DNN获取控件的路径,或者让用户选择要加载的模块和模块控件。
例如,下面是一个我以前只做过一个面板的例子:
ASCX
<asp:Panel ID="pnlPlaceHolder" runat="server" />
代码背后
var moduleView = new UserControl();
var userControl = moduleView.LoadControl("~/DesktopModules/PropertyInfoModule/ViewPropertyInfoModule.ascx");
pnlPlaceHolder.Controls.Add(userControl);