public void HandleKeyDown(KeyEventArgs key)
{
Debug.WriteLine(key.Key);
switch (key.Key) {
case Key.Down:
IncrementSelection();
break;
case Key.Up:
DecrementSelection();
break;
case Key.Enter:
if (Commit != null) {
Commit(this, EventArgs.Empty);
}
break;
case Key.Escape:
if (Cancel != null) {
Cancel(this, EventArgs.Empty);
}
break;
case Key.Tab:
if (Commit != null) {
Commit(this, EventArgs.Empty);
}
break;
}
}