博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
动态生成Menu
阅读量:6681 次
发布时间:2019-06-25

本文共 1018 字,大约阅读时间需要 3 分钟。

项目中需要动态生成菜单,于是写了个简单的c#代码示例,有待进一步完善:

 

            DataSet ds = new DataSet();

            DataTable dt = new DataTable();
            dt.Columns.Add("Code");
            dt.Rows.Add("1000");
            dt.Rows.Add("10001000");
            dt.Rows.Add("100010001000");
            dt.Rows.Add("100010001001");
            dt.Rows.Add("10001001");
            dt.Rows.Add("100010011000");
            dt.Rows.Add("100010011001");
            dt.Rows.Add("10001002");
            dt.Rows.Add("100010021000");
            dt.Rows.Add("100010021001");
            ds.Tables.Add(dt);

            for (int i = 1; i < ds.Tables[0].Rows.Count; i++)

            {
                MenuItem mi = new MenuItem(ds.Tables[0].Rows[i][0].ToString(), ds.Tables[0].Rows[i][0].ToString(), "", "");
                for (int j = i+1; j < ds.Tables[0].Rows.Count; j++)
                {
                    if (ds.Tables[0].Rows[i][0].ToString().Length < ds.Tables[0].Rows[j][0].ToString().Length)
                    {
                        MenuItem mi1 = new MenuItem(ds.Tables[0].Rows[j][0].ToString(), ds.Tables[0].Rows[i][0].ToString(), "", "");
                        mi.ChildItems.Add(mi1);
                        if (j==ds.Tables[0].Rows.Count-1)
                        {
                            i = j;
                        }
                    }
                    else
                    {
                        i = j - 1;
                        break;
                    }
                }
                Menu1.Items.Add(mi);
            }

转载于:https://www.cnblogs.com/guoxiaowen/archive/2009/05/06/1451039.html

你可能感兴趣的文章
工厂模式之数据工厂
查看>>
IBM Java多线程 - 1. 线程基础
查看>>
关系数据库的末日是否已经来临(转载)
查看>>
Myeclipse中导入jar包的方法
查看>>
topcoder srm 715 div1 -23
查看>>
梯度下降(Gradient Descent)小结
查看>>
一起谈.NET技术,使用User Control做HTML生成
查看>>
谷歌启动搜索引擎新功能 网页Flash内容即时预览
查看>>
专访梭子鱼:以“立体交付”保障Web应用安全
查看>>
微软SQL Server 2012新特性Silverlight报表客户端 - Power View
查看>>
记一次网站收录数和排名的实现
查看>>
pthread_cond_wait()用法分析
查看>>
poj-3368 Frequent values ***
查看>>
Install IIS 7.5 PHP & FastCGI for PHP on Windows 7
查看>>
C#连接Excel示例代码和驱动
查看>>
30幅非常漂亮的微距摄影作品欣赏
查看>>
6、关于ctemplate的一个例子
查看>>
Sql Server 锁资源模式详解
查看>>
标准电声系统测试
查看>>
SQLite移植手记
查看>>