Default Input Map Problem With Equals Key

Posted by: richardrumsey on 8 September 2017, 1:54 pm EST

  • Posted 8 September 2017, 1:54 pm EST

    Hi


    I have developed my own spreadsheet style application and have all the functinoality stored as a user control so that i can imbed the control into a number of different forms (possibly different applications).


    I would expect that incorporating the control into each application that it would function in the same way, however i am having problems with the key input maps.


     When the spreadsheet control is the only control loaded to a form i am able to use the equals key to start typing a formula into the cell. However when i incorpoarate the control into my main application which has a number of dirrent screens and panels, i seem to lose the equals key functinoality from my spreadsheet.


     I do not know where to begin to try and find out why the input map no longer functions and was wondering whether anyone had any experience with this problem or could help in any way. I am truly stuck!


     Thanks

  • Replied 8 September 2017, 1:54 pm EST

    Richard,

    Could you please post a zipped project which replicates the said issue at our side along with the steps to replicates the same?

    Thanks

  • Replied 8 September 2017, 1:54 pm EST

    Richard,


    By default, the spreadsheet's WhenFocused input map binds the '=' keystroke to the StartEditingFormula action.  The WhenFocused input map's bindings consume keystrokes in the spreadsheet's ProcessKeyDown and ProcessKeyChar methods.  However, a container control (e.g. form or panel) can consume a keystroke before these spreadsheet methods are called with the keystroke (e.g. in the form's ProcessDialogChar method).  I would suggest checking the code of the container controls (from spreadsheet's immediate parent to the form) to see if one of them is consuming the '=' keystroke.

  • Replied 8 September 2017, 1:54 pm EST

    When i press the equals key it registers as a key being pressed in the sheet, but the event for entering edit mode is not fired. Can i force it to enter edit mode for a formula somehow?


    The direct Parent of the control is a panel containing another 5 controls, There are no specific key events for this panel (or the form which is the parent of this panel) so how would i go about seeing if the equakls keystroke is being consumed by these?


    I will try and get a zipped project up soon.


     


    Thanks

Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels