System.Windows.Controls.ScrollViewer.OnKeyDown C# (CSharp) Méthode

OnKeyDown() protected méthode

Responds to the KeyDown event.
protected OnKeyDown ( KeyEventArgs e ) : void
e KeyEventArgs Provides data for KeyEventArgs.
Résultat void
        protected override void OnKeyDown(KeyEventArgs e) 
        {
            if (!e.Handled)
            { 
                if (!TemplatedParentHandlesScrolling)
                {
                    // Parent is not going to handle scrolling; do so here 
                    bool control = (ModifierKeys.Control == (Keyboard.Modifiers & ModifierKeys.Control));
                    bool handled = true;

                    switch (e.Key)
                    {
                        case Key.Up:
                            ScrollInfo.LineUp ();
                            break;
                        case Key.Down:
                            ScrollInfo.LineDown ();
                            break;
                        case Key.Left:
                            ScrollInfo.LineLeft ();
                            break; 
                        case Key.Right:
                            ScrollInfo.LineRight ();
                            break; 
                        case Key.PageUp:
                            ScrollInfo.PageUp ();
                            break;
                        case Key.PageDown:
                            ScrollInfo.PageDown ();
                            break;
                        case Key.Home:
                            if (!control)
                                SetScrollOffset (Orientation.Horizontal, double.MinValue);
                            else
                                SetScrollOffset (Orientation.Vertical, double.MinValue);
                            break;
                        case Key.End:
                            if (!control)
                                SetScrollOffset (Orientation.Horizontal, double.MaxValue);
                            else
                                SetScrollOffset (Orientation.Vertical, double.MaxValue);
                            break;
                        default:
                            handled = false;
                            break;
                    }

                    if (handled)
                        e.Handled = true;
                }
            }

            base.OnKeyDown (e);
        }