我是新的DNN。我在DNN中导航有问题。 我有一个带有显示页面和两个视图的模块:
我为这些视图控件创建了一个带有两个模块定义的模块。 第一个定义包括两个控件:
第二个定义包括一个控件: 1.查看控件
我的问题是从view1到显示页面的导航Url工作正常但是从view2导航会将我带到空白页面。 这是两个视图中的导航:
观看1:http://dnndev.me/en-us/vnp/services/service/ctl/Display/mid/426/id/82
观看2:http://dnndev.me/en-us/vnp/services/service/ctl/Display/mid/427/id/82
任何人都会帮助我。非常感谢。
答案 0 :(得分:1)
我建议你只为一个基地创建一个模块定义" View"控件,在该View控件中,放置一个占位符,当加载页面时,该视图控件确定要在占位符中加载的ASCX文件。
您可以在DNN简单文章模块http://dnnsimplearticle.codeplex.com/
中查看此示例基本上是ASCX方
<asp:PlaceHolder ID="phViewControl" runat="server" />
背后的代码
try
{
var controlToLoad = "Controls/ArticleList.ascx";
if (ArticleId > 0)
{
controlToLoad = "Controls/ArticleView.ascx";
}
var mbl = (dnnsimplearticleModuleBase)LoadControl(controlToLoad);
mbl.ModuleConfiguration = ModuleConfiguration;
mbl.ID = System.IO.Path.GetFileNameWithoutExtension(controlToLoad);
phViewControl.Controls.Add(mbl);
}
catch (Exception exc) //Module failed to load
{
Exceptions.ProcessModuleLoadException(this, exc);
}
关键是&#34; ArticleId&#34;基类中的属性,从查询字符串参数读取,如果参数存在,则加载详细信息视图。
这就是我如何采用加载&#34; List&#34;和&#34;细节&#34;视图。你肯定也可以把它变得更复杂。