请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

lqslog

注册会员

11

主题

26

帖子

97

积分

注册会员

积分
97

微信认证勋章

lqslog
注册会员   /  发表于:2016-4-12 17:45  /   查看:3240  /  回复:2
类似这样的菜单,数据需要动态绑定

2 个回复

倒序浏览
lqslog
注册会员   /  发表于:2016-4-12 17:47:24
沙发
图发不出了。。。。。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-4-13 11:54:26
板凳
有关Menu的绑定。
假设有一个Node类,如下:
  1. public class Node
  2.     {
  3.         public string Name { get; set; }
  4.         public List<Node> Children { get; set; }

  5.         public override string ToString()
  6.         {
  7.             return Name;
  8.         }
  9.     }
复制代码


C1Menu的绑定代码参考:
  1. public MainPage()
  2.         {
  3.             InitializeComponent();
  4.             _menu.ItemsSource = GenerateData();
  5.         }

  6.         private IList GenerateData()
  7.         {
  8.             int firstLevel = 3;
  9.             int secondLevel = 3;
  10.             int thirdLevel = 3;

  11.             List<Node> firstLevelNodes = new List<Node>(firstLevel);
  12.             for (int i = 0; i < firstLevel; i++)
  13.             {
  14.                 Node flNode = new Node();
  15.                 flNode.Name = string.Format("Node_{0}", i);
  16.                 flNode.Children = new List<Node>(secondLevel);
  17.                 for (int j = 0; j < secondLevel; j++)
  18.                 {
  19.                     Node slNode = new Node();
  20.                     slNode.Name = string.Format("Node_{0}.{1}", i, j);
  21.                     slNode.Children = new List<Node>(thirdLevel);
  22.                     for (int k = 0; k < thirdLevel; k++)
  23.                     {
  24.                         Node tlNode = new Node();
  25.                         tlNode.Name = string.Format("Node_{0}.{1}.{2}", i, j, k);
  26.                         tlNode.Children = new List<Node>(thirdLevel);
  27.                         slNode.Children.Add(tlNode);
  28.                     }
  29.                     flNode.Children.Add(slNode);
  30.                 }
  31.                 firstLevelNodes.Add(flNode);
  32.             }

  33.             return firstLevelNodes;
  34.         }
复制代码


如果您的需求有差别,您可以以附件或是图片的形式将您的需求发给我们(如何贴图之前已经发给您,发不了的具体错误是什么?提示了错误还是有什么)
否则很抱歉,我无法想象您的需求。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部