我正在开发一个DNN模块,我想在我的ContentPane的顶部显示一条信息消息,而不是在实际模块的上方。我发现DotNetNuke.UI.Skins.Skin.AddPageMessage()
应该做的事情。虽然我没有得到我想要的行为,但该消息根本不会显示。如何使用Skin.AddPageMessage()方法?
该方法很少有重载,一组接受Page
对象,另一组接受Skin
对象。
public static void AddPageMessage(Page page, string heading, string message, ModuleMessage.ModuleMessageType moduleMessageType)
public static void AddPageMessage(Skin skin, string heading, string message, ModuleMessage.ModuleMessageType moduleMessageType)
我也看看到DNN源,结果发现,最终他们实际上正在使用相同的private static AddPageMessage(...)
方法,它只是看起来对所提供的控制内的contentPane并增加了一个新的ModuleMessage
到收集其控制。
作为Page
或Skin
参数我应该通过什么才能使此correcty工作?
谢谢...
感谢您的回复,我已经尝试了您之前描述的方式,但不幸的是它似乎不起作用。我已经用默认皮肤和自定义皮肤尝试了它。在调试dnn源代码时,FindControl实际上找到了ContentPane,但其Controls集合是空的(不应该是,因为至少应该有我的模块),并且在向集合添加新的ModuleMessage对象之后什么都没有发生,并且没有消息显示在页面上。任何想法? – 2012-03-12 08:18:12
嗯,我看到同样的事情。奇怪的。我不完全确定目前为什么会发生这种情况。 – 2012-03-13 18:18:36
还有一些证据表明该方法正在增加“DNN Pro Trial”消息。但是当我自己调用它时,它不会显示在UI中,即使它找到了ContentPane ... – 2012-03-13 18:28:41