我正在为DNN开发幻灯片放映模块,我已经完成了模块,但是我遇到了问题。我使用模块的TabModuleID属性来加载模块的每个实例的图像,这个用户可以添加多个模块的实例和不同的图片。这就是问题,当我勾选模块设置中的show all pages复选框时,它显示模块因为tabModuleID,它在每个页面上都没有加载图像,它为每个模块实例提供不同的tabModuleID,因此模块无法加载图像,需要为每个模块实例上传图像。有没有办法实现这个目标?(对不起)因为英语不好)
答案 0 :(得分:3)
使用ModuleId属性而不是TabModuleId来存储数据。当您选择“在所有页面上显示”选项(或手动添加作为对现有模块的引用的模块实例)时,ModuleId在实例之间共享。
TabModuleId应该用于存储有关数据显示方式的信息(以便您可以在主页上单向显示模块,在内部页面上显示另一种方式),但应按ModuleId存储数据本身。
模块的每个新实例都有一个新的ModuleId。也就是说,每次使用控制面板向页面添加模块(并且不使用“添加现有模块”对话框)时,该实例都有自己的ModuleId。实际上,每页只能有一个特定ModuleId的实例。您不能在同一页面上拥有两个具有相同ModuleId但不同TabModuleIds的实例。
模块 ID表示模块的实例,而标签模块 ID表示特定网页上的实例 < / em>的。 模块定义确定定义,其中控件显示在该实例中,桌面模块是模块定义的包将模块添加到页面时为其创建实例。桌面模块是您在主机 - >模块定义页面以及控制面板中模块下拉列表中看到的,