Create() public static method

public static Create ( FrameworkElement fe ) : HintRoot
fe System.Windows.FrameworkElement
return HintRoot
Example #1
0
        private void Show()
        {
            if (InputManager.Current.IsInMenuMode)
            {
                return;
            }

            if (_hintWindow != null)
            {
                throw new NotSupportedException("Hint already shown");
            }

            // subclass
            _hintSource           = new HintSource();
            _hintSource.Activate += Close;
            _hintSource.SubClass();

            // create hint window
            var ht = HintRoot.Create(PlacementRect, _hintSource);

            _hintWindow = new HintWindow(this, ht)
            {
                Text = _text
            };

            if (BackgroundResourceReference != null)
            {
                _hintWindow.border.SetResourceReference(Border.BackgroundProperty, BackgroundResourceReference);
            }

            if (ForegroundResourceReference != null)
            {
                _hintWindow._textBlock.SetResourceReference(TextBlock.ForegroundProperty, ForegroundResourceReference);
            }

            _hintSource.HintWindow = _hintWindow;
            //new WindowInteropHelper(_hintWindow) { Owner = _hintSource.Owner };
            _hintWindow.Closed   += HintWindowClosed;
            _hintWindow.MaxHeight = 1200.0;//System.Windows.Forms.Screen.FromRectangle(PlacementRect).WorkingArea.
            _wrapWidth            = 1200.0;

            _hintWindow.WrapWidth = _wrapWidth;
            _hintWindow.Show();
        }
Example #2
0
        public static Window ShowSubHint(Hint hint, FrameworkElement el, string hintText, Window owner)
        {
            var ht = HintRoot.Create(el);

            if (owner != null)
            {
                foreach (HintWindow window in owner.OwnedWindows)
                {
                    if (!window._hintRoot.Equals(ht))
                    {
                        window.Close();
                        continue;
                    }

                    ht.Dispose();
                    return(null);
                }
            }

            var wnd = new HintWindow(hint, ht)
            {
                Text = hintText, Owner = owner
            };

            if (hint.BackgroundResourceReference != null)
            {
                wnd.border.SetResourceReference(Border.BackgroundProperty, hint.BackgroundResourceReference);
            }

            if (hint.ForegroundResourceReference != null)
            {
                wnd._textBlock.SetResourceReference(TextBlock.ForegroundProperty, hint.ForegroundResourceReference);
            }

            wnd.Show();

            return(wnd);
        }