Bug Report T195457
Visible to All Users

The ImmediatePopup property isn't applied for SearchLookUpEdit

created 10 years ago

[DevExpress Support Team: CLONED FROM T195028: Shift+Tab stops working when entering a LookUpEdit]
Hi,

I've attached a simple sample demonstrating a few key modifier usability issues with LookUpEdit that I've spent a day trying to resolve unsuccessfully.

Issue 1: Shift+Tab stops working when entering a LookUpEdit
Steps to reproduce: Type something in the Name field. Press Tab. The cursor moves to the next field. Now press Shift+Tab. Instead of going to the previous field, the LookupEdit opens.

Any solution may preferably build on a resource dictionary template approach where appropriate (included), because that's what we are using.

Thanks

Comments (3)
Andrey K (DevExpress Support) 10 years ago

    Hello,

    The cause of this behavior is that SearchLookUpEdit' LookUpEdit.ImmeditePopup property is set to "true", and for now there is no way to change this property to false. I have passed this thread to our R&D team for further research. Once we have any news, we will update this thread. Please stay tuned.

    Thanks,
    Andrey

      After implementing the workaround in other tickets it seems this problem is resolved, and you could perhaps build your solution on that. This is what I have currently:
             protected override bool ProcessPopupKeyDown(KeyEventArgs e)
             {
                 // Tab stops navigating in a LookUpEdit: https://www.devexpress.com/Support/Center/Question/Details/T195458
                 var res = base.ProcessPopupKeyDown(e);
                 if (e.Key == Key.Tab)
                 {
                     ClosePopup();
                 }
                 return res;
             }
             protected override void OnPreviewKeyDown(KeyEventArgs e)
             {
                 if (ShouldInterceptKey(e))
                     return;
                 base.OnPreviewKeyDown(e);
             }
             private static bool ShouldInterceptKey(KeyEventArgs e)
             {
                 // Solution for preventing popup on keyboard commands:
                 // The Control-key is consumed by the LookupEdit: https://www.devexpress.com/support/center/Question/Details/T195459
                 return e.Key == Key.LeftCtrl || e.Key == Key.RightCtrl
                     || e.Key == Key.LeftShift || e.Key == Key.RightShift;
             }

      Andrey K (DevExpress Support) 10 years ago

        Thank you for sharing this solution with us. We appreciate your cooperation.

        Andrey

        Answers approved by DevExpress Support

        created 9 years ago

        We have fixed the issue described in this ticket and will include the fix in our next maintenance update. To apply this solution before the official update, request a hotfix by clicking the corresponding link for product versions you require.

        Note: Hotfixes may be unavailable for beta versions and updates that are about to be released.

          Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

          Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.