Block the Shift Escape functionality for the toolwindow.

Docking/MDI for WPF Forum

Posted 5 years ago by keshav bansal
Version: 13.2.0592
Avatar

Hi,

suppose i have two toolwindows(toolwindow1,toolwindow2) in my sample wpf application.

I focus the toolwindow1 by clicking on the toolwindow1 title bar.

Now i press the shift+escape key.Its closing the toolwindow1.

This blocking is acieved by handling the Preview key down event handler and set e.Handled=true.

But when i float the toolwindow1 and now i press the Shift+escape then it  not going  to that Preview key down  event handler.

So how to restrict the shift+escape while toolwindow is in floating state ?

Is there any generic mechanicm for it independent of the toolwindow state ?

 

Thanks

Keshav

Comments (1)

Answer - Posted 5 years ago by Actipro Software Support - Cleveland, OH, USA
Avatar

Hi Keshav,

Key handlers only apply to the same root WPF Window that they are in.  When you float a docking window, it ends up going into a "rafting window" container, which is a separate WPF Window.  It get created by a call to DockSite.CreateRaftingWindow. 

You could make a class that inherits the DockSite class and override the CreateRaftingWindow method.  In your override, call its base implementation and look at the Window-based result.  Attach to the PreviewKeyDown event there with your own custom handler to block Shift+Esc.  Then return the Window object to the caller.


Actipro Software Support

The latest build of this product (v2018.1 build 0675) was released 1 month ago, which was after the last post in this thread.

Add Comment

Please log in to a validated account to post comments.