示例#1
0
        /// <summary>
        /// 显示用户控件,并隐藏前一个显示的用户控件。因此,必须确保当前显示的用户控件是在ContentQueue的最后一个。
        /// </summary>
        /// <param name="content">当前要呈现的用户控件。</param>
        private void ShowContent(UserControl content)
        {
            content.Loaded += frameworkElement_Loaded;

            if (ContentQueue.Count > 0) // 隐藏前一个,显示当前控件
            {
                ContentQueue[ContentQueue.Count - 1].Visibility = System.Windows.Visibility.Hidden;
                content.Visibility = System.Windows.Visibility.Visible;
            }

            if (ContentQueue.Contains(content)) // 如果包含当前控件,则将其移到最后一个
            {
                ContentQueue.Remove(content);
                ContentQueue.Add(content);
            }
            else
            {
                // 如果没有包含当前控件,则直接添加到最后一个并显示
                ContentQueue.Add(content);
                LayoutDockPanel.Children.Add(content);
            }

            if (SideBars.ContainsKey(content))
            {
                var control  = SideBars[content];
                var settings = SideBarSettings[control];
                ShowSidebar(control, settings.Item1, settings.Item2);
            }
        }
示例#2
0
        private void ResetNavigation()
        {
            if (BundleRuntime.Instance.State == BundleRuntimeState.Stopping)
            {
                return;
            }

            Action resetNavigation = () =>
            { // 重新初始化TreeView
                SkinUserControl = new Settings();
                WelcomeControl  = new Introduction();

                LayoutDockPanel.Children.Clear();
                ContentQueue.Clear();
                OpenedPagesCache.Clear();
                HideSidebar();
                SideBars.Clear();
                SideBarSettings.Clear();
                TreeViewItemSelectionQueue.Clear();
                TopTreeViewItemNavigationNodeTuples.Clear();
                NavigationTreeView.Items.Clear();

                InitializeNavigationTreeView();

                if (BundleActivator.PermissionServiceTracker.IsServiceAvailable)
                {
                    SetCurrentUser(BundleActivator.PermissionServiceTracker.DefaultOrFirstService.CurrentUserName);
                }

                ShowContent(WelcomeControl);
            };

            Dispatcher.Invoke(resetNavigation); // 由界面代理线程来执行UI更新。
        }
示例#3
0
        public ActionResult DeleteConfirmed(int id)
        {
            SideBars sidebars = db.SideBars.Find(id);

            db.SideBars.Remove(sidebars);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#4
0
        //
        // GET: /SideBar/Delete/5

        public ActionResult Delete(int id = 0)
        {
            SideBars sidebars = db.SideBars.Find(id);

            if (sidebars == null)
            {
                return(HttpNotFound());
            }
            return(View(sidebars));
        }
示例#5
0
 public ActionResult Edit(SideBars sidebars)
 {
     if (ModelState.IsValid)
     {
         db.Entry(sidebars).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(sidebars));
 }
示例#6
0
 public ActionResult Edit([Bind(Include = "Id,Name,Controller,Action")] SideBars sideBars)
 {
     if (ModelState.IsValid)
     {
         db.Entry(sideBars).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(sideBars));
 }
示例#7
0
        public ActionResult Create(SideBars sidebars)
        {
            if (ModelState.IsValid)
            {
                db.SideBars.Add(sidebars);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(sidebars));
        }
示例#8
0
        public ActionResult Create([Bind(Include = "Id,Name,Controller,Action")] SideBars sideBars)
        {
            if (ModelState.IsValid)
            {
                db.SideBars.Add(sideBars);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(sideBars));
        }
示例#9
0
        public ActionResult Create([Bind(Include = "Id,Name,Controller,Action,CreateTime,IsRemove")] SideBars sideBars)
        {
            if (ModelState.IsValid)
            {
                sideBars.Id = Guid.NewGuid();
                db.sideBars.Add(sideBars);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(sideBars));
        }
示例#10
0
        // GET: SideBars/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SideBars sideBars = db.SideBars.Find(id);

            if (sideBars == null)
            {
                return(HttpNotFound());
            }
            return(View(sideBars));
        }