Laurie
2017-06-04T18:19:04Z
Hello

I have been working with the iGrid 6.50.0067 for 2 weeks now. Great product.

My apps have up to 20 forms with iGrids on them.

I have Form.Keypreview set to true on all forms.
I use a common block of code in the form.KeyDown event to trap for function keys
and perform common tasks such as Export to Excel, Print the grid, save the column layout etc.

One of the functions is tied to the F4 key.

This event works fine if the igrid.editable is set to false.
When I set iGrid.Editable to true and select one or more cells and press the F4 key,
The igrid.Keydown event fires but the Form.keydown event does not.

I found a reference to the F4 key and Combo boxes in the help but it is not very clear.
I do not use any Combo boxes on these grids (yet).

Is there a way I can get the F4 key to fire in the Form.Keydown event?

Thank you
Laurie Borlase
RaymondC
2017-06-05T21:20:09Z
If you have tested and confirmed that the grid's keydown event is firing then couldn't you write a procedure in the grid's keydown event that checks the grid's editable state and when appropriate calls the form's keydown event.
Igor/10Tec
2017-06-06T12:56:18Z
I know the nature of this issue. We use a low-level COM technique to intercept key strokes in our iGrid to do what users expect when they press keys like ENTER, F2, F4. It is required in such development environments like Microsoft Access, which try to "eat" those functional keys first before iGrid will see it. As a result, we intercept F2 and F4 and they are not passed to the hosting environment. This causes the effect Laurie reported.

F4 is a de facto standard to open the drop-down list in combo box controls, and it is used in iGrid for this purpose too. However, now I see that we need to intercept F4 only when a cell has an attached combo list. In all other cases this key must be passed to the hosting environment. The same is for F2, which can be used to start text editing if it is possible in the current cell.

Let me implement a workaround for this special case, so the code of the existing forms will not require any change. I'll implement it in a day or so and then send a link to the new build of iGrid with this improvement in a private email message.
Laurie
2017-06-12T18:45:05Z
Igor

Thank you for the quick response.
The F4 key now raises the KeyDown event at the form level.

Great product.

Laurie Borlase