LabelControl
简介:标签控件。这个应该是用的最多的一个控件了。主要起到在输入框前起提示作用,如果点击问号图标开可以给出详细的说明。
位置:controls/LabelControl.ascx
属性:
ControlName:对应控件。指明该标签对应用那一个控件。如果点击标签就可以使对应的获得焦点。
Text:标签显示文本。
HelpKey:标签帮助对应的ResourceKey(在语言资源文件中获取对应值得关键字)
HelpText:标签帮助文本。在使用时如果显示指明HelpText=""将不显示标签前的问号图标。
ResourceKey: 在语言资源文件中获取对应值得关键字。其实我们只要设置一个ResourceKey,在资源文件中分别用ResourceKey.Text和 ResourceKey.Help就可以分别表示标签文本和帮助文本了。在其他ASP.NET控件中也可以用这个属性,DNN会自动分析这个属性,把它作 为Text值。如:Lable,Button,HyperLink,ListItem(在RadioButtonList,DropDownList中可 以通过指定其ListItem中ResourceKey属性实现多语言功能),具体用法可以在DNN的自带模块中找到大量例子。
Suffix:后缀,显示在标签后面的文本。如:?或:
使用方法:
1、首先在需要应用的页面中注册这个控件,如:
<%@ Register TagPrefix="dnn" TagName="Label" Src="~/controls/LabelControl.ascx" %>
2、在需要用到位置写下如下的代码,如:
<
dnn:label
id
="plTitle"
runat
="server"
controlname
="txtTitle"
suffix
=":"
/>
DualListControl
简介:它是个双列表框选择控件。它适用于在一个指定的范围内选择一部所需要的内容。在 DotNetNuke程序中他可以通用,而且使用简单,只用设置好相应的属性即可。例如:要做一个授权的功能的时候,就可以在Available列表中读 取系统所有的角色,将需要被授权的角色移动到Assigned列表中。
位置:controls/DualListControl.ascx
属性:
ListBoxWidth:类型String,列表框宽度
ListBoxHeight:类型String,列表框宽度
Available:类型ArrayList,可供选择的内容
Assigned:类型ArrayList,选定的内容
DataTextField:类型String,列表框文本字段
DataValueField:类型String,列表框值字段
Enabled:类型Boolean,是否有效
使用方法:
1、首先在需要应用的页面中注册这个控件,如:
<%@ Register TagPrefix="Portal" TagName="DualList" Src="~/controls/DualListControl.ascx" %>
2、在需要用到位置写下如下的代码,如:
<
portal:duallist
id
="ctlAdminRoles"
runat
="server"
ListBoxWidth
="130"
ListBoxHeight
="130"
DataValueField
="RoleName"
DataTextField
="RoleName"
></
portal:duallist
>
3、在后台代码中声明该控件
Protected
WithEvents
ctlAdminRoles
As
DotNetNuke.UI.UserControls.DualListControl
4、在后台代码中分别绑定Available和Assigned的ArrayList,如:
ModuleAuditControl
Dim objRoles As
New
RoleController
Dim arrSysRoles
As
New
ArrayList
' 获取当前站点所有的角色
arrSysRoles =
objRoles.GetPortalRoles(PortalId)
Dim arrAvailableAdminRoles
As
New
ArrayList
Dim arrAssignedAdminRoles
As
New
ArrayList
arrAvailableAdminRoles = arrSysRoles
' 当不是新建时,初始化已选定角色ArrayList,在可选择角色ArrayList中派出已选择部分
' objInfo.AdminRoles是以分号分隔的角色名
' ctlAdminRoles:DualListControl
If
Not
objInfo
Is
Nothing
Then
' 获取已经选定的角色
Dim
arrAdminRoles
As
String
()
=
objInfo.AdminRoles.Split(
"
;
"
)
Dim RoleName
As
String
For
Each
RoleName
In
arrAdminRoles
Dim objRole
As
New
RoleInfo
objRole.RoleName = RoleName
arrAssignedAdminRoles.Add(objRole)
Next
For
Each
objAvailableRole
As
RoleInfo
In
arrAvailableAdminRoles
For
Each
objAssignedRole
As
RoleInfo
In
arrAssignedAdminRoles
If objAvailableRole.RoleName
=
objAssignedRole.RoleName
Then
arrAvailableAdminRoles.Remove(objAvailableRole)
End
If
Next
Next
End
If
ctlAdminRoles.Available = arrAvailableAdminRoles
ctlAdminRoles.Assigned = arrAssignedAdminRoles
ctlAdminRoles.DataBind()
5、从控件中获取选定项
' strAdminRoles:以分号分隔的角色名
' ctlAdminRoles:DualListControl
Dim strAdminRoles As
String
=
String
.Empty
For Each
objItem
As
ListItem
In
ctlAdminRoles.Assigned
strAdminRoles = strAdminRoles +
"
;
"
+
objItem.Text
Next
strAdminRoles = strAdminRoles.Substring( 1
)
简介:显示创建人和创建时间的控件。
位置:controls/ModuleAuditControl.ascx
属性:
CreatedByUser:创建人。在DNN3.3.x版可以直接输入用户ID就可以显示用户名了。
CreatedDate:创建时间。
使用方法:1、首先在需要应用的页面中注册这个控件,如:
<%@ Register TagPrefix="Portal" TagName="Audit" Src="~/controls/ModuleAuditControl.ascx" %>
2、在需要用到位置写下如下的代码,如:
< portal:Audit id ="ctlAudit" runat ="server"
/>
3、在后台代码中声明该控件和使用这个控件
Protected WithEvents ctlAudit As ModuleAuditControl
ctlAudit.CreatedDate = objArticle.CreatedDate.ToString
ctlAudit.CreatedByUser = objArticle.CreatedByUser.ToString
SectionHeadControl
简介:可以选择将一部分功能显示的控件,分组到一个table中。并用这个控件实现折叠和展开这组控件。DNN在页面设置、主机设置用的很多。如果你开发的模块有许多要输入的字段,不妨也用用这个控件,把要输入的信息分组,把一些较少用到字段折叠,起到简化界面的作用。
位置:controls/SectionHeadControl.ascx
属性:CssClass:样式
IncludeRule:是否在这个选择标签下显示一个水平线<hr>。
IsExpanded:指示初始是否展开控件。
JavaScript:指定展开折叠功能所用到JavaScript函数,这先不用设置默认就好了。
MaxImageUrl:展开时显示图标地址。默认即可。
MinImageUrl:折叠时显示图标地址。默认即可。
ResourceKey:在语言资源文件中获取对应值得关键字。
Text:选择标签文字。这些不需要写,指定ResourceKey,并在资源文件中给出相应的值就可以了。
Section:需要展开和折叠的控件ID,一般是table或div。如果要要使用这个功能,这些table和div必须runat="server"。
使用方法:1、首先在需要应用的页面中注册这个控件,如:
<%@ Register TagPrefix="dnn" TagName="SectionHead" Src="~/controls/SectionHeadControl.ascx" %>
2、在需要用到位置写下如下的代码,如:
< dnn:sectionhead id ="dshAuthorize" cssclass ="Head" runat ="server"
isexpanded
="False"
text
="Authorize Settings"
section ="tblAuthorize" resourcekey ="dshAuthorize" />
< table id ="tblAuthorize" runat ="server" ><
tr
><
td
>
要折叠或展开的内容
</
td
></
tr
></
table
>