可重复使用的皮肤代码?

时间:2012-07-02 14:06:01

标签: css dotnetnuke skinning

我是一名学习DNN的.net开发人员,想知道如何为我的皮肤制作可重复使用的代码。我想要做的是在文件(如母版页)中创建页眉和页脚部分,然后创建我的皮肤,我将用于引入页眉/页脚文件并添加到它的网站(如嵌套母版页) )。剥皮时有办法做到这一点吗?我试图阻止为网站的其余部分制作主页皮肤和皮肤。主页和页面的页眉和页脚部分始终相同。

如果最重要的事情是我不想在多个地方进行更改。

有关如何执行此操作的任何建议吗?

2 个答案:

答案 0 :(得分:1)

您可以添加从多个外观引用的控件。请查看我在https://stackoverflow.com/a/10518931/2688的答案,了解更详细的信息。

答案 1 :(得分:0)

当您为DNN创建外观时,基本上您正在创建一个“母版页”,可以这么说。因此,当您创建“皮肤”时,在布局页面时,您实际上只为整个网站使用一个皮肤布局。

如果您的主页与其他内容页面不同,则无需创建两个完整外观,但您需要制作两个布局。区别在于您内容的中间部分。您的一个皮肤将有两个HTML文件,当您的皮肤被解析并包含在您的门户中时,它将转换为两个.ascx文件(如果您通过HTML创建皮肤。如果您正在直接.ascx,那么你' ll布局两个.ascx文件)。

所有内容都在于如何布局ContentPane窗格,该窗格必须位于布局中。对于您的主页,它将在内容页面中的不同位置。例如,如果您的主页在标题下方有一个旋转器,而没有侧边栏的单个部分因此内容是全宽,那么下面是一个页脚,那么您的ContentPane将在全宽中间。

然后,您的内容页面可能具有相同的页眉和页脚,但左侧或右侧的侧边栏(或两者,您可以在单个内容页面上执行,除非您使用它们,否则不会显示它们)。因此,您将页面布局为使ContentPane向左(或向右)浮动,并使侧边栏向右(或向左)浮动。

基本上,您使用相同的工作流来布局静态网站,但请记住,将根据内容的定位使用内容窗格。

我建议你听一下Chris Hammond从DotNetNuke那里做的一些DotNetNuke视频。它们以完整的细节完成,引导您完成整个构图,从HTML简单添加标记到直接.ascx和使用寄存器。

http://vimeo.com/dnnvideo