WPF Border KeyBoard KeyDown Event Handler feuert nich?
-
Hallo,
ich leute mir ne Klasse von Border ab, und will da das KeyDown ereignis verwenden.. aber er regiart nich auf key down...Muss das ding irgendwie den Focus haben nehm ich an oder.. er soll drauf reagieren wenn der mauszeiger in dem bereich ist.. habe es nun so gelöst.. gibts evt. ne bessere lösung?
public abstract class Enviroment3D : Border { public Enviroment3D(){ this.Child = _viewer = new Viewport3D(); //Platzhalter index 0 (Scene) _viewer.Children.Add(new ContainerUIElement3D()); //Platzhalter index 1 (Lights) _viewer.Children.Add(new ModelVisual3D()); //Hintergrund setzen um MouseTargetBound einzugrenzen (Geht nur wenn hintergrund definiert ist) this.Background = Brushes.White.Clone(); //MouseEvents an Kameranavigation weiterleiten MouseMove += new MouseEventHandler((s, e) => { SceneCamera.OnMouseMove(this, e); }); MouseWheel += new MouseWheelEventHandler((s, e) => { SceneCamera.OnMouseWheel(this, e); }); // GEHT NICHT //KeyBoard events KeyDown += new KeyEventHandler((s, e) => { SceneCamera.OnKeyboard(this, e); }); //GEHT Keyboard.AddKeyDownHandler(Application.Current.MainWindow, new KeyEventHandler((s, e) => { if(this.IsMouseOver) SceneCamera.OnKeyboard(this, e); })); } ...}
-
SceneCamera.Focusable = true;
Keyboard.Focus(SceneCamera);