コード例 #1
0
        public override Panel CreateControl(BaseConfigurationAttribute attr, PropertyInfo prop, object configuration_instance)
        {
            Panel  panel = base.CreateControl(attr, prop, configuration_instance);
            Button btn   = new Button()
            {
                Content = "Open Editor"
            };

            EditorWindow window = null;

            btn.Click += (s, e) =>
            {
                window = (window ?? new EditorWindow(m_wrapper));
                if (window.Visibility == Visibility.Visible)
                {
                    window.Activate();
                }
                else
                {
                    window.Show();
                }
            };

            panel.Children.Add(btn);
            return(panel);
        }
コード例 #2
0
 void AddEditorWindow(EditorWindow window)
 {
     mOpendDocuments.Add(window);
     window.ShowAsDocument(mDockingManager);
     window.Activate();
     window.SelectionChanged += new EditorSelectionEventHandler(onEditor_SelectionChanged);
     window.Closed           += new EventHandler(onEditor_Closed);
 }
コード例 #3
0
ファイル: App.xaml.cs プロジェクト: bravesoftdz/BlogWrite
        /// <summary> Create an Editor Window.</summary>
        public void CreateNewEditorWindow(BlogEntryEventArgs arg)
        {
            if (arg.Entry == null)
            {
                return;
            }

            var win = new EditorWindow();

            win.DataContext = new EditorViewModel(arg.Entry);

            App app = App.Current as App;

            app.WindowList.Add(win);

            // We can't use Show() or set win.Owner = this.
            // Try minimized and resotre a child window then close it. An owner window minimizes itself.
            //win.Owner = this;
            //win.Show();
            win.ShowInTaskbar = true;
            win.ShowActivated = true;
            win.Visibility    = Visibility.Visible;
            win.Activate();
        }
コード例 #4
0
ファイル: App.xaml.cs プロジェクト: bravesoftdz/BlogWrite
        /// <summary> Create or BringToFront an Editor Window.</summary>
        public void CreateOrBringToFrontEditorWindow(BlogEntryEventArgs arg)
        {
            if (arg.Entry == null)
            {
                return;
            }

            string id = arg.Entry.ID;

            App app = App.Current as App;

            // The key is to use app.WindowList here.
            //foreach (var w in app.Windows)
            foreach (var w in app.WindowList)
            {
                if (!(w is EditorWindow))
                {
                    continue;
                }

                if ((w as EditorWindow).DataContext == null)
                {
                    continue;
                }

                if (!((w as EditorWindow).DataContext is EditorViewModel))
                {
                    continue;
                }

                if (id == ((w as EditorWindow).DataContext as EditorViewModel).ID)
                {
                    //w.Activate();

                    if ((w as EditorWindow).WindowState == WindowState.Minimized || (w as Window).Visibility == Visibility.Hidden)
                    {
                        //w.Show();
                        (w as EditorWindow).Visibility  = Visibility.Visible;
                        (w as EditorWindow).WindowState = WindowState.Normal;
                    }

                    (w as EditorWindow).Activate();
                    //(w as EditorWindow).Topmost = true;
                    //(w as EditorWindow).Topmost = false;
                    (w as EditorWindow).Focus();

                    return;
                }
            }

            var win = new EditorWindow
            {
                DataContext = new EditorViewModel(arg.Entry)
            };

            app.WindowList.Add(win);

            // We can't use Show() or set win.Owner = this.
            // Try minimized and resotre a child window then close it. An owner window minimizes itself.
            //win.Owner = this;
            //win.Show();
            win.ShowInTaskbar = true;
            win.ShowActivated = true;
            win.Visibility    = Visibility.Visible;
            win.Activate();
        }