|
| |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
表结构与内容 MenBh MenText Bhparent 0001 文件 0002 编辑 0005 打开 0001 0006 新建 0001 0011 access数据库 0006 0012 VFP的Dbf 0006 0013 剪切 0002 0014 复制 0002 0015 完全复制 0014
Private m As New MainMenu() Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim conn As New SqlConnection(\"server=localhost;uid=sa;pwd=;database=jiang\") Dim cmd As New SqlCommand(\"select * from a_menu \", conn) Dim ds As New DataSet() Dim sqldpr As New SqlDataAdapter(cmd) sqldpr.Fill(ds, \"menu\") Me.DataGrid1.DataSource = ds.Tables(\"menu\") \\\'创建关系 Dim dr As New DataRelation(\"self_menu\", ds.Tables(\"menu\").Columns(\"MenBh\"), ds.Tables(\"menu\").Columns(\"Bhparent\")) ds.Relations.Add(dr) Dim r1 As DataRow \\\'查找最高的菜单级别,也就是Bhparent列为空的行 For Each r If r1.IsNull(\"Bhparent\") Then addmenuitem(r1, Nothing) End If Next Me.Menu = m \\\'指定主窗体菜单 End Sub \\\'递归函数 Private Sub addmenuitem(ByVal r As DataRow, ByVal item As MenuItem) Dim mi As MenuItem \\\'假如是最外层菜单,要直接添加 If item Is Nothing Then mi = m.MenuItems.Add(r.Item(\"MenText\")) Else \\\'假如是下级菜单要在菜单项的上级添加 mi = item.MenuItems.Add(r.Item(\"MenText\")) End If Dim r2 As DataRow For Each r addmenuitem(r2, mi) Next End Sub \\\'--------------------------------------------------------一种方式的改进 ‘///////////////////////////////////////////////////////////////////////////////////// ‘继续自menuitem的类 ‘///////////////////////////////////////////////////////////////////////////////////// Public Class mymenuitem Inherits System.Windows.Forms.MenuItem Public Sub New(ByVal s As String, ByVal tag As String) MyBase.New() Me.Text = s m_tag = tag End Sub Private m_tag As String Public Property tag() As String Get Return m_tag End Get Set(ByVal Value As String) m_tag = Value End Set End Property End class 本新闻共2页,当前在第1页 1 2 本新闻共2页,当前在第1页 1 2 返回类别: 教程 上一教程: 头一次手写这么长的代码,真累:( 下一教程: .NET Framework For Java Programmers ---4(Good) 您可以阅读与"使用递归从数据库读取数据来动态建立菜单"相关的教程: · 使用COBOL.net访问数据库 · 使用perl.net访问数据库 · 使用ADO.NET轻松操纵数据库 · .NET Remoting 实现分布式数据库查询 · 如何使用asp+ 动态创建页面元素 |
| 快精灵印艺坊 版权所有 |
首页 |
||