在DNN 4.X中自定义登录界面

简介: 有时候我们需要自定DNN的登录界面,比如把版式改为横版,原始的DNN登录模块是竖向排列控件的,如图: 因为只是UI上的变化,思路很简单,找到对应控件的ascx文件,修改其中的HTML和CSS即可,具体可参考我之前的一篇文章:在DotNetNuke中通过修改ascx文件源码自定义界面 但到了DNN 4.x 情况有了一些变化,admin\Security\signin.ascx 这个文件没有了, Login 控件被移到了Admin/Authenticaion/Login.ascx 不就是移动了个地方吗,还是照样改就可以了。

有时候我们需要自定DNN的登录界面,比如把版式改为横版,原始的DNN登录模块是竖向排列控件的,如图:

clip_image002

因为只是UI上的变化,思路很简单,找到对应控件的ascx文件,修改其中的HTML和CSS即可,具体可参考我之前的一篇文章:在DotNetNuke中通过修改ascx文件源码自定义界面

但到了DNN 4.x 情况有了一些变化,admin\Security\signin.ascx 这个文件没有了, Login 控件被移到了Admin/Authenticaion/Login.ascx

clip_image004

不就是移动了个地方吗,还是照样改就可以了。当你打开这个ascx文件时,却发现怎么也找不到User Name和Passoword这些东西,这是怎么回事呢?

原来,DNN 4.x为了支持多种登录方式,对Login控件进行了重新设计,因为用户可以设置使用多种登录方式,所以登录的部分比如User Name 和Password是动态加入的。在Admin/Authenticaion/Login.ascx里,我们可以看到这写代码:


< DNN:DNNTabStrip 
                    
ID ="tsLogin"  
                    runat
="server"  
                    TabRenderMode
="All"
                    CssTabContainer
="LoginTabGroup"
                    CssContentContainer
="LoginContainerGroup"  
                    DefaultContainerCssClass
="LoginContainer"
                    DefaultLabel-CssClass
="LoginTab"
                    DefaultLabel-CssClassHover
="LoginTabHover"
                    DefaultLabel-CssClassSelected
="LoginTabSelected"  
                    visible
="false"   />

这就是用来动态加载不同的登录方式的DNNTabStrip,最后的效果如下(www.dotnetnuke.com的登录窗口):

clip_image006

看到没, 多了一个使用LiveID登录.

了解了这一点,我们就明白如何在DNN 4.X下修改登录界面了,不但要修改Admin/Authenticaion/Login.ascx,还有修改与你选择登录方式对应的登录控件单独的axcx文件。

这几个Authentication Provider在这 几个目录下:

  • DesktopModules/AuthenticationServices/DNN
  • DesktopModules/AuthenticationServices/LiveID
  • DesktopModules/AuthenticationServices/OpenID

clip_image008

目录
相关文章
|
机器学习/深度学习
为什么DNN 4.x 的永久登陆用不了?
“记住登录(Remember Me)”功能在DNN 4里面默认的持续时间是1小时,在DNN 4之前设置的是50年。如果想修改持续时间,可以修改web.config文件,修改的地方如下:       如果想修改为7天:       如果想修改为1年:       ...
662 0
|
机器学习/深度学习 C#
DNN 4.x CodeSmith模板
写在文章之前: 使用CodeSmith模板适合对DNN模块开发了解比较深入的人员,如果你是初学者,建议先不要采用这个方式,这篇文章也可暂时跳过。初学者可以从这里开始:DotNetNuke模块制作Super-Simple(DAL+)教程-翻译CodeSmith 今天重新看了一下Michael Wa...
834 0
|
机器学习/深度学习
为什么DNN 4.x 的永久登陆用不了?
“记住登录(Remember Me)”功能在DNN 4里面默认的持续时间是1小时,在DNN 4之前设置的是50年。如果想修改持续时间,可以修改web.config文件,修改的地方如下:       如果想修改为7天:       如果想修改为1年:       ...
|
机器学习/深度学习 C#
DNN 4.x CodeSmith模板
写在文章之前: 使用CodeSmith模板适合对DNN模块开发了解比较深入的人员,如果你是初学者,建议先不要采用这个方式,这篇文章也可暂时跳过。初学者可以从这里开始:DotNetNuke模块制作Super-Simple(DAL+)教程-翻译CodeSmith 今天重新看了一下Michael Wa...
|
机器学习/深度学习 算法 PyTorch
OpenCV-图像着色(采用DNN模块导入深度学习模型)
OpenCV-图像着色(采用DNN模块导入深度学习模型)
594 0
来自OpenCv的DNN模块助力图像分类任务
来自OpenCv的DNN模块助力图像分类任务
401 0
来自OpenCv的DNN模块助力图像分类任务
|
机器学习/深度学习
DNN 模块MVP 模式学习中的一些问题
为了让View部分可以测试,我们使用interface来分离View和业务逻辑的耦合。 我的问题是: Q:对于在aspx.design.cs中声明的控件,我们也需要在interface中声明吗?如果要声明,那么在aspx.design.cs中的控件声明是不是就是interface的实现? 我们不能在interface直接声明跟aspx.design.cs控件同名的变量,我们应该认为aspx.design.cs中的控件就是view的一部分,我们无法控制。
607 0
|
机器学习/深度学习 前端开发
介绍一些免费的DNN模块
Administration Advanced Control Panel Free fully featured ajax enabled control panel replacement for Dot...
996 0
|
机器学习/深度学习 SEO
介绍几个DNN SEO模块,可免费试用的
iFinity Url Master - Get the best SEO results by taking control of your DNN urls iFinity Tagger - Tag your DNN content and create specific, target...
765 0
|
XML 机器学习/深度学习 数据格式
DNN Navisuite菜单模块原始XML文件的格式
DNN 比较好用的一个菜单模块式Navsuite模块,这个模块因为使用XML+XSL的技术手段,可以灵活的生成各种各样的菜单样式。 你可以通过修改style目录下的xsl文件来创建自己的菜单样式,但有一个问题是这个模块没有非常详细的手册,生成的XML是什么格式我们并不熟悉,我这里把生成的XML贴出来给大家参考。
961 0

热门文章

最新文章