Пример #1
0
        /// <summary>
        /// Erzeugt eine neue Seitenansicht mit einfacher Seite
        /// </summary>
        /// <param name="label">Titel der Seite</param>
        /// <param name="page">Instanz der anzuzeigenden Seite</param>
        public SinglePage(string label, KPage page)
        {
            MainWindow mainWindow = Application.Current.MainWindow as MainWindow;
            Frame frame = new Frame();
            Toolbar toolbar = new Toolbar(frame, page);
            ScrollableFrame scrollableFrame = new ScrollableFrame();
            ExtScrollViewer scrollViewer = scrollableFrame.createScrollableFrame(frame);

            DockPanel.SetDock(toolbar.dpToolbarPanel, Dock.Top);

            mainWindow.subNavigation.Children.Clear();

            frame.Margin = new Thickness(15, 0, 0, 0);
            frame.Content = page;
            page.parentFrame = frame;
            page.parentToolbar = toolbar;
            page.parentScrollViewer = scrollViewer;

            page.defineToolbarContent();

            mainWindow.contentPanel.Children.Clear();
            mainWindow.contentPanel.Children.Add(toolbar.dpToolbarPanel);
            mainWindow.contentPanel.Children.Add(scrollViewer);
            mainWindow.lbPageTitle.Content = label;
        }
Пример #2
0
        /// <summary>
        /// Erzeugt eine neue Seitenansicht mit einfacher Seite
        /// </summary>
        /// <param name="label">Titel der Seite</param>
        /// <param name="page">Instanz der anzuzeigenden Seite</param>
        public SinglePage(string label, KPage page)
        {
            MainWindow      mainWindow      = Application.Current.MainWindow as MainWindow;
            Frame           frame           = new Frame();
            Toolbar         toolbar         = new Toolbar(frame, page);
            ScrollableFrame scrollableFrame = new ScrollableFrame();
            ExtScrollViewer scrollViewer    = scrollableFrame.createScrollableFrame(frame);

            DockPanel.SetDock(toolbar.dpToolbarPanel, Dock.Top);

            mainWindow.subNavigation.Children.Clear();

            frame.Margin            = new Thickness(15, 0, 0, 0);
            frame.Content           = page;
            page.parentFrame        = frame;
            page.parentToolbar      = toolbar;
            page.parentScrollViewer = scrollViewer;

            page.defineToolbarContent();

            mainWindow.contentPanel.Children.Clear();
            mainWindow.contentPanel.Children.Add(toolbar.dpToolbarPanel);
            mainWindow.contentPanel.Children.Add(scrollViewer);
            mainWindow.lbPageTitle.Content = label;
        }
Пример #3
0
        /// <summary>
        /// Erzeugt eine neue Seitenansicht mit TabControl
        /// </summary>
        /// <param name="source">Die aufrufende Seite vom Typ KPage</param>
        /// <param name="label">Titel der Seite</param>
        /// <param name="tabs">Liste von anzuzeigenden SimpleTabItem</param>
        public SinglePage(KPage source, string label, List<SimpleTabItem> tabs)
        {
            MainWindow mainWindow = Application.Current.MainWindow as MainWindow;

            // Erzeuge TabControl
            tabControl = new TabControl();
            tabControl.FontSize = 14;
            tabControl.Background = Brushes.White;
            tabControl.Margin = new Thickness(-1, 15, -1, -1);

            source.parentTabControl = this.tabControl;

            mainWindow.subNavigation.Children.Clear();

            // macht aus der tabs-Liste einen TabControl
            foreach (var tab in tabs)
            {
                DockPanel pageWrapper = new DockPanel();

                ScrollableFrame scrollableFrame = new ScrollableFrame();
                ExtScrollViewer scrollViewer = scrollableFrame.createScrollableFrame(tab.frame);

                tab.toolbar.relatedTabControl = tabControl;

                pageWrapper.Margin = new Thickness(-4);
                pageWrapper.Children.Add(tab.toolbar.dpToolbarPanel);
                pageWrapper.Children.Add(scrollViewer);

                tab.frame.Margin = new Thickness(15, 0, 0, 0);
                tab.frame.Content = tab.page;
                tab.page.parentFrame = tab.frame;
                tab.page.parentToolbar = tab.toolbar;
                tab.page.parentTabControl = tabControl;
                tab.page.parentScrollViewer = scrollViewer;

                tab.page.defineToolbarContent();

                TabItem tabItem = new TabItem();
                tabItem.Header = tab.label;
                tabItem.Content = pageWrapper;
                tabControl.Items.Add(tabItem);
            }

            mainWindow.contentPanel.Children.Clear();
            mainWindow.contentPanel.Children.Add(tabControl);
            mainWindow.lbPageTitle.Content = label;
        }
Пример #4
0
        /// <summary>
        /// Erzeugt eine neue Seitenansicht mit TabControl
        /// </summary>
        /// <param name="source">Die aufrufende Seite vom Typ KPage</param>
        /// <param name="label">Titel der Seite</param>
        /// <param name="tabs">Liste von anzuzeigenden SimpleTabItem</param>
        public SinglePage(KPage source, string label, List <SimpleTabItem> tabs)
        {
            MainWindow mainWindow = Application.Current.MainWindow as MainWindow;

            // Erzeuge TabControl
            tabControl            = new TabControl();
            tabControl.FontSize   = 14;
            tabControl.Background = Brushes.White;
            tabControl.Margin     = new Thickness(-1, 15, -1, -1);

            source.parentTabControl = this.tabControl;

            mainWindow.subNavigation.Children.Clear();

            // macht aus der tabs-Liste einen TabControl
            foreach (var tab in tabs)
            {
                DockPanel pageWrapper = new DockPanel();

                ScrollableFrame scrollableFrame = new ScrollableFrame();
                ExtScrollViewer scrollViewer    = scrollableFrame.createScrollableFrame(tab.frame);

                tab.toolbar.relatedTabControl = tabControl;

                pageWrapper.Margin = new Thickness(-4);
                pageWrapper.Children.Add(tab.toolbar.dpToolbarPanel);
                pageWrapper.Children.Add(scrollViewer);

                tab.frame.Margin            = new Thickness(15, 0, 0, 0);
                tab.frame.Content           = tab.page;
                tab.page.parentFrame        = tab.frame;
                tab.page.parentToolbar      = tab.toolbar;
                tab.page.parentTabControl   = tabControl;
                tab.page.parentScrollViewer = scrollViewer;

                tab.page.defineToolbarContent();

                TabItem tabItem = new TabItem();
                tabItem.Header  = tab.label;
                tabItem.Content = pageWrapper;
                tabControl.Items.Add(tabItem);
            }

            mainWindow.contentPanel.Children.Clear();
            mainWindow.contentPanel.Children.Add(tabControl);
            mainWindow.lbPageTitle.Content = label;
        }
Пример #5
0
        /// <summary>
        /// Fügt einen neuen Untermenüpunkt mit einem TabControl hinzu
        /// </summary>
        /// <param name="label">Titel der Seite</param>
        /// <param name="tabs">Liste von SimpleTabItems, die angezeigt werden sollen</param>
        public void addSubnavigation(string label, List <SimpleTabItem> tabs)
        {
            // Erzeuge TabControl
            tabControl            = new TabControl();
            tabControl.FontSize   = 14;
            tabControl.Background = Brushes.White;
            tabControl.Margin     = new Thickness(-1, 15, -1, -1);

            foreach (var tab in tabs)
            {
                DockPanel pageWrapper = new DockPanel();

                ScrollableFrame scrollableFrame = new ScrollableFrame();
                ExtScrollViewer scrollViewer    = scrollableFrame.createScrollableFrame(tab.frame);

                tab.toolbar.relatedTabControl = tabControl;

                pageWrapper.Margin = new Thickness(-4);
                pageWrapper.Children.Add(tab.toolbar.dpToolbarPanel);
                pageWrapper.Children.Add(scrollViewer);

                tab.frame.Margin            = new Thickness(15, 15, 0, 0);
                tab.frame.Content           = tab.page;
                tab.page.parentFrame        = tab.frame;
                tab.page.parentToolbar      = tab.toolbar;
                tab.page.parentTabControl   = tabControl;
                tab.page.parentScrollViewer = scrollViewer;

                tab.page.defineToolbarContent();

                TabItem tabItem = new TabItem();
                tabItem.Header  = tab.label;
                tabItem.Content = pageWrapper;
                tabControl.Items.Add(tabItem);
            }

            SubnavigationButton sBtn = new SubnavigationButton(label, tabControl);

            mainWindow.subNavigation.Children.Add(sBtn.btn);
        }
Пример #6
0
        /// <summary>
        /// Fügt einen neuen Untermenüpunkt mit einem TabControl hinzu
        /// </summary>
        /// <param name="label">Titel der Seite</param>
        /// <param name="tabs">Liste von SimpleTabItems, die angezeigt werden sollen</param>
        public void addSubnavigation(string label, List<SimpleTabItem> tabs)
        {
            // Erzeuge TabControl
            tabControl = new TabControl();
            tabControl.FontSize = 14;
            tabControl.Background = Brushes.White;
            tabControl.Margin = new Thickness(-1, 15, -1, -1);

            foreach (var tab in tabs)
            {
                DockPanel pageWrapper = new DockPanel();

                ScrollableFrame scrollableFrame = new ScrollableFrame();
                ExtScrollViewer scrollViewer = scrollableFrame.createScrollableFrame(tab.frame);

                tab.toolbar.relatedTabControl = tabControl;

                pageWrapper.Margin = new Thickness(-4);
                pageWrapper.Children.Add(tab.toolbar.dpToolbarPanel);
                pageWrapper.Children.Add(scrollViewer);

                tab.frame.Margin = new Thickness(15, 15, 0, 0);
                tab.frame.Content = tab.page;
                tab.page.parentFrame = tab.frame;
                tab.page.parentToolbar = tab.toolbar;
                tab.page.parentTabControl = tabControl;
                tab.page.parentScrollViewer = scrollViewer;

                tab.page.defineToolbarContent();

                TabItem tabItem = new TabItem();
                tabItem.Header = tab.label;
                tabItem.Content = pageWrapper;
                tabControl.Items.Add(tabItem);
            }

            SubnavigationButton sBtn = new SubnavigationButton(label, tabControl);
            mainWindow.subNavigation.Children.Add(sBtn.btn);
        }
Пример #7
0
        /// <summary>
        /// Die anzuzeigende Seite wechseln
        /// Erstellt neue Instanzen anstatt existierende wieder zu verwenden, da es Probleme mit dem .net Framework gab
        /// </summary>
        /// <param name="label">Der Titel der neuen Seite</param>
        /// <param name="pageType">Der Typ der neuen Seite</param>
        /// <param name="args">Parameter für den Konstruktor der neuen Seite</param>
        public void switchPage(string label, Type pageType, params object[] args)
        {
            try
            {
                KPage page = (KPage)Activator.CreateInstance(pageType, args);

                Frame frame = new Frame();
                Toolbar toolbar = new Toolbar(frame, page);
                ScrollableFrame scrollableFrame = new ScrollableFrame();
                ExtScrollViewer extScrollViewer = scrollableFrame.createScrollableFrame(frame);
                frame.Margin = new Thickness(15, 0, 0, 0);

                DockPanel.SetDock(toolbar.dpToolbarPanel, Dock.Top);

                frame.Content = page;
                page.parentFrame = frame;
                page.parentToolbar = toolbar;
                page.parentScrollViewer = extScrollViewer;
                page.defineToolbarContent();

                this.contentPanel.Children.Clear();
                this.contentPanel.Children.Add(toolbar.dpToolbarPanel);
                this.contentPanel.Children.Add(extScrollViewer);
                this.lbPageTitle.Content = label;
            }
            catch
            {
            }
        }