Exemplo n.º 1
0
        //加载用户模块, 不同用户权限不一样,加载的功能模块也不一样
        private void LoadNavModules()
        {
            var context = new SystemModuleDomainContext();

            //获取用户模块,并回调处理
            context.GetUserModuleList("10", AuthenticateStatus.CurrentUser.UserId, OnGetNavModuleCompleted, null);
        }
Exemplo n.º 2
0
        //超链接按钮单击事件, 导航到相应的页面
        private void OnNavLinkButtonClick(object sender, RoutedEventArgs e)
        {
            var link = sender as HyperlinkButton;  //获取超链接按钮

            if (link == null)
            {
                return;
            }

            foreach (UIElement child in NavLinksStackPanel.Children)   //StackPanel中查找超链接按钮
            {
                var hb = child as HyperlinkButton;
                if (hb != null)   // 找到有效的超链接按钮,设置激活或不活动状态
                {
                    VisualStateManager.GoToState(hb, ReferenceEquals(hb, link) ? "ActiveLink" : "InactiveLink", true);
                }
            }

            if (link.NavigateUri != null)   //按钮的导航地址不为空
            {
                ShowLeftMenu(false);
            }
            else
            {
                ShowLeftMenu(true);                            //显示导航项目
                var module = link.DataContext as SystemModule; //获取超链接绑定的模块数据
                if (module != null)
                {
                    var context = new SystemModuleDomainContext(); //获取模块内容,并回调!!!!!!!!!!!!!!!!!!!!  子模块加载
                    context.GetUserModuleList(module.ModuleId, AuthenticateStatus.CurrentUser.UserId, OnGetSubModuleCompleted, null);
                }
            }
        }