I have just started to use the NetAdvantage 2011.2. When using the new Input controls (e.g. XamMaskedInput) I noticed that although pressing Tab moves focus correctly forward through the controls, using Shift+Tab (reverse tab navigation) seems to get 'stuck' in the input controls (does not occur in the equivalent editor controls). Is this problem due to the way I'm using them, or a limitation of the Input controls?
This can be easily seen in the xamFeatureBroswer app (xamInputs section examples).
Hello cassellm,
When hitting the Shift and Tab keys staying focus on the XamMaskedInput may be part of the design. In the help documentation contains information for the usage: http://help.infragistics.com/NetAdvantage/WPF/2011.2/CLR4.0/?page=xamMaskedInput.html. As for flexibility the control contains the KeyDown event. In this event handler you should be able to add a condition to check whether the shift + tab key has been pressed and then change it's focus.
Let me know if you have any questions with this matter. Thank you.
I am unable to see anything in the suggested document link that references this particular behaviour. As this standard keyboard navigation is supported by standard controls as well as your editor controls, do you expect this limitation/bug to be addressed in the near future?
For a WPF application (which would also be making use of the xamDataGrid) would you recomend the use of the editor controls rather than the new input controls?
Here's a quick temporary hack until this is fixed for anyone that needs it...
Register a handler in Application OnStartup (or somewhere cleaner if you'd prefer):
EventManager.RegisterClassHandler(typeof(XamMaskedInput), XamMaskedInput.KeyDownEvent, new KeyEventHandler(XamMaskedInput_KeyDown));
And here is the handler:
private void XamMaskedInput_KeyDown(object sender, KeyEventArgs e) { var input = (XamMaskedInput)sender;
if (e.Key == Key.Tab && Keyboard.Modifiers == ModifierKeys.Shift) { var request = new TraversalRequest(FocusNavigationDirection.Previous); input.MoveFocus(request);
e.Handled = true; }
That'll take care of all the the XamMaskedInput controls in your app as well as any controls that derive from it such as XamNumericInput, etc.
Hello Glen,
This is just a follow up if you require any further assistance.
Well, I figured out a workaround but I'd still like to see Shift + Tab work like every other control.
gbjorgan said: Well, I figured out a workaround but I'd still like to see Shift + Tab work like every other control.
For this issue has been resolved with development #90155 and the fix will be included in the next service release. You can find case CAS-97232-M8MHV5 at the support activity page.
Thanks :)
The fix is now available in the latest service release download at My Keys & Downloads.