Why doesn't keyboard input work for a ScrollViewer when the child control has input focus?
- by Ashley Davis
Why doesn't keyboard input work for a ScrollViewer when the child control has input focus?
This is the scenario.  A WPF window opens.  It sets the focus to a control that is embedded in a ScrollViewer.
I hit the up and down and left and right keys.  The ScrollViewer doesn't seem to handle the key events, anyone know why?
This is the simplest possible example:
<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300"
    FocusManager.FocusedElement="{Binding ElementName=control}"
    >
    <Grid>
        <ScrollViewer
            HorizontalScrollBarVisibility="Auto"
           >
            <ItemsControl
                x:Name="control"
                Width="1000"
                Height="1000"
                />
        </ScrollViewer>        
    </Grid>
</Window>
When you start the app that contains this window, "control" appears to have the focus as I intended.  Pressing the key seems to result in bubbling key events reaching the ScrollViewer (I checked for this using WPF Snoop).  I can't work out why it doesn't respond to the input.