最近我发现了ComponentArt WebUI 这个控件,用它可以方便的建立精美的菜单和树状结构,下面是我开发时初始化树时的代码,其实很简单和.NET 自己的控件的使用方法基本相同。
以下代码在html中定义树的样式和结构
<componentart:treeview id="TreeView1" runat="server" Width="200px" CssClass="TreeView" LineImagesFolderUrl="images/lines/"
LeafNodeImageUrl="images/mdlr.gif" ParentNodeImageUrl="images/folder.gif" ExpandImageUrl="images/col.gif"
CollapseImageUrl="images/exp.gif" NodeEditCssClass="NodeEdit" SelectedNodeRowCssClass="SelectedTreeNodeRow"
HoverNodeRowCssClass="HoverTreeNodeRow" NodeRowCssClass="TreeNodeRow" SelectedNodeCssClass="RowTreeNode"
HoverNodeCssClass="HoverTreeNode" NodeCssClass="TreeNode" AutoPostBackOnSelect="True" AutoPostBackOnNodeCheckChanged="True"
CausesValidation="False" Height="300px">
<Nodes>
<componentart:TreeViewNode Text="node1" AutoPostBackOnSelect="True" Selectable="False" AutoPostBackOnCheckChanged="True"></componentart:TreeViewNode>
<componentart:TreeViewNode Text="node2" AutoPostBackOnSelect="True" Selectable="False" AutoPostBackOnCheckChanged="True"></componentart:TreeViewNode>
</Nodes>
</componentart:treeview>
以下代码用于根据数据库信息动态生成树结构
TreeView1.Nodes(0).Nodes.Clear() ‘树结点清空
TreeView1.Nodes(1).Nodes.Clear()
Dim node As ComponentArt.Web.UI.TreeViewNode ’定义一个结点类型
Dim i As Int32
Dim mdl As ModelBaseInfo
For i = 0 To mdllist.Count - 1 ‘mdllist为存储从数据库中读出的数据
mdl = CType(mdllist(i), ModelBaseInfo) ’modelbaseinfo为自己定义的数据结构
Select Case mdl.NETTYPE
Case "node1"
node = New ComponentArt.Web.UI.TreeViewNode
node.Text = mdl.MODLNAME & "—" & mdl.CREATEUSER ‘结点文本
node.Value = mdl.MODL_ID ’结点值
TreeView1.Nodes(0).Nodes.Add(node) ‘添加结点
Case "node2"
node = New ComponentArt.Web.UI.TreeViewNode
node.Text = mdl.MODLNAME & "—" & mdl.CREATEUSER
node.Value = mdl.MODL_ID
TreeView1.Nodes(1).Nodes.Add(node)
End Select
Next
感觉和用DropDownlist没什么区别吧。
posted on
浙公网安备 33010602011771号