protected override void OnStart() { base.OnStart(); ViewModelMenu viewModel = new ViewModelMenu(Platform.Android, Intent.Extras.GetString(NavigationService.KeyMenuIdentifier)); SetupConnectors(viewModel); }
public PageMenu() { InitializeComponent(); Loaded += (sender, args) => { ViewModelMenu viewModel = new ViewModelMenu(Platform.UWP, _navigationParameters[NavigationService.KeyMenuIdentifier]); Toolbar.Title = _navigationParameters[NavigationService.KeyMenuLabel]; DataContext = viewModel; }; }
private void SetupConnectors(ViewModelMenu viewModel) { TextView message = FindViewById <TextView>(Resource.Id.menuMessage); new ConnectorTextView(message, viewModel, nameof(PageMenu.Message)); ListView listView = FindViewById <ListView>(Resource.Id.menuItems); List <ViewPropertyBinding> bindings = new List <ViewPropertyBinding> { new ViewPropertyBinding(Resource.Id.Title, "Label"), new ViewPropertyBinding(Resource.Id.Description, "Description"), new ViewPropertyBinding(Resource.Id.Icon, "Image") }; ConnectorListView connectorListView = new ConnectorListView(this, listView, Resource.Layout.TemplateMenuItem, viewModel, viewModel.Items, bindings, "SelectedMenuItem"); }
public EasyUIGrid GetUserGridMenus(EasyUIGridRequest request, List <int> userMenuId, int parentid) { int total = 0; EasyUIGrid grid = new EasyUIGrid(); if (OperateContext.Current.UserRole.Contains(1)) { grid.rows = ViewModelMenu.ToListViewModel(ModuleManager.GetPagedList(request.PageNumber, request.PageSize, ref total, m => m.isDel == false && m.moduleParentId == parentid, m => m.sort)); } else { grid.rows = ViewModelMenu.ToListViewModel(ModuleManager.GetPagedList(request.PageNumber, request.PageSize, ref total, m => m.isDel == false && m.moduleParentId == parentid && userMenuId.Contains(m.moduleId), m => m.sort)); } //记录总数 grid.total = total; //返回ui层的菜单 return(grid); }
public IEnumerable <ViewModelMenu> GetUserTreeMenus(EasyUITreeRequest request, string userRoles) { //返回ui层的菜单 IEnumerable <ViewModelMenu> rootMenus = new List <ViewModelMenu>() { new ViewModelMenu() { icon = request.RootIcon, MenuIcon = request.RootIcon, MenuParentNo = request.PidField, MenuName = "主菜单", MenuNo = request.IdField, text = "主菜单", children = (List <ViewModelMenu>)ViewModelMenu.ToListViewModel(ModuleManager.GetListBy(m => m.moduleParentId == 0)) } }; return(rootMenus); }
public override void ViewWillAppear(bool animated) { base.ViewDidAppear(animated); NavigationController.NavigationBar.Hidden = false; NavigationItem.Title = Label; ViewModelMenu viewModel = new ViewModelMenu(Platform.iOS, MenuIdentifier); new ConnectorUITextView().Connect(Message, viewModel, nameof(viewModel.Message)); List <UITableViewCellViewBinding> tableCellBindings = new List <UITableViewCellViewBinding> { new UITableViewCellViewBinding(UITableViewCellViewIdentifier.TextLabel, nameof(MenuItem.Label)), new UITableViewCellViewBinding(UITableViewCellViewIdentifier.DetailTextLabel, nameof(MenuItem.Description)), new UITableViewCellViewBinding(UITableViewCellViewIdentifier.ImageView, nameof(MenuItem.Image)), }; new ConnectorUITableView(Items, UITableViewCellStyle.Subtitle, UITableViewCellAccessory.DisclosureIndicator, viewModel, viewModel.Items, tableCellBindings, nameof(viewModel.SelectedMenuItem)); }
/// <summary> /// 获取用户的菜单 /// </summary> /// <param name="Roles"></param> /// <returns></returns> public IEnumerable <ViewModelMenu> GetUserPermissionMenus(List <int> UserMenu) { List <ViewModelMenu> menusList = new List <ViewModelMenu>(); //获取当前角色的json菜单数据 IEnumerable <Sample_Module> RolesMenus = new List <Sample_Module>(); if (OperateContext.Current.UserRole.Contains(1)) { RolesMenus = ModuleManager.GetListBy(m => m.isMenu == true).OrderBy(m => m.sort).ToList(); } else { RolesMenus = ModuleManager.GetListBy(m => UserMenu.Contains(m.moduleId) && m.isMenu == true).OrderBy(m => m.sort).ToList(); } //首先找出父级菜单 var ParentMenus = ModuleManager.GetListBy(p => p.moduleParentId == 0).OrderBy(m => m.sort); foreach (Sample_Module roleMenu in ParentMenus) { //实体转化 ViewModelMenu menu = ViewModelMenu.ToEntity(roleMenu); //添加子菜单 foreach (Sample_Module childMenu in RolesMenus) { if (childMenu.moduleParentId == roleMenu.moduleId) { ViewModelMenu child = ViewModelMenu.ToEntity(childMenu); if (menu.children == null) { menu.children = new List <ViewModelMenu>(); } menu.children.Add(child); } } if (menu.children != null && menu.children.Count > 0) { menusList.Add(menu); } } return(menusList); }
public MenuView(Frame frame) { InitializeComponent(); DataContext = new ViewModelMenu(frame); }