The InputManager class is responsible for coordinating all of the input systems in WPF.
A filter is any code that listens to PreProcessInput or PostProcessInput. Filters can modify the input staging area.
A monitor is any code that listens to PreNotifyInput or PostNotifyInput. Monitors cannot modify the input staging area.
The InputManager controls the input staging area. The input staging area processes input into Windows Presentation Foundation (WPF) events.
Input is processed in WPF in the follow stages:
Pre-process stage. The input manager raises the PreProcessInput event.
Pre-notify stage. The input manager raises the PreNotifyInput event.
The WPF input event or events are raised.
Post-notify stage. The input manager raises the PostNotifyInput event.
Post-process stage. The input manager raises the PostProcessInput event.