Orthello
2014-01-30T04:36:12Z
Hi Guys, i'm just evaluation the iGrid control in access 2013.
The main reason i want to use the tool is conditional formatting is quite unreliable at colouring cells in my datasheet subforms and i've been impressed with what i have seen so far with iGrid. The colouring seems solid and scroll speed is fast.
Theres a couple of show stoppers though in converting the subforms to igrids :

1.) Combo boxes only have 1 text field. - i have a sort of work around for this although longterm it would be great if you could add multiple columns to combo boxes. So far i think i will used a courier type font eg fixed with per character and just join the fields to be shown with tabbed spaces in between. It will work but not as elegant, are there any plans to add multiple columns ?

2.) I have a product combo i need to use on several sub forms (which i want to convert to igrids), unfortunately it has about 7000 products in this combo. There are some ways i can cut this down but each way has its drawbacks. Its taking approx 12-13 seconds to populate this combo box. Is there a way to store the pointer to the combo in a control variable or other and simply assign new combos to the existing combo control. The 12sec delay could be acceptable if it was a one time delay. I can't find a way to do this so every time the igrid is opened its taking 12-13 seconds to populate this combo alone.

3.) Using the FillFromRS method is great, its populating the grid really fast if no combos are previously set, how ever if the product combo is set as in No2 above (7000 line combo box) its taking over 2 mins to complete the FillFromRS command , it takes 3 seconds if no combos are defined first. I gather its taking the time to relate the value to the text to display. Any tips here to speed this up ? is there a point in the amount of lines the combo has that it really slows down after that amount of lines ?

Hopefully you guys have some ideas for me to try.
Igor/10Tec
2014-01-30T14:25:40Z
We do not plan to implement the multi-column combo list feature in the neares future, but I doubt you need to use combo lists in your scenario if you have thousands of list items. Do you think this is convenient for your users, when they need to scroll so many rows to find the required one? Wouldn't it be much better to display a select dialog based on a grid control which will allow to find the required item using say incremental search by any column (iGrid allows you to do that)?

Both Windows combo/list boxes and iGrid combo boxes are not intended for storing 1000+ items, they are useable for 20-30, maybe, 100-150 items, but not more. So if its possible, we would recommend that you redesign your grids taking into account this.

引用:

2.) I have a product combo i need to use on several sub forms (which i want to convert to igrids), unfortunately it has about 7000 products in this combo. There are some ways i can cut this down but each way has its drawbacks. Its taking approx 12-13 seconds to populate this combo box. Is there a way to store the pointer to the combo in a control variable or other and simply assign new combos to the existing combo control.



In iGrid ActiveX, you can use a combo list only within 1 iGrid.

引用:

3.) Using the FillFromRS method is great, its populating the grid really fast if no combos are previously set, how ever if the product combo is set as in No2 above (7000 line combo box) its taking over 2 mins to complete the FillFromRS command , it takes 3 seconds if no combos are defined first.



When you issue FillFromRS, the internal logic knows that you have a combo list attached to the cells, and sure it searches for the corresponding value in the attached list for every cell to link the cell value to the corresponding list item. This can dramatically slow down your code if iGrid needs to enumerate up to 7000 combo list items for every grid row.
Orthello
2014-02-04T22:29:22Z
Hi Igor, i've changed the combos around and used some dynamic formatting which has done the trick in making it work a lot quicker.

Just one more hurdle i have to get past on this screen which i see is a known issue, with combo boxes been dropped down forcing the entire grid to be redrawn. This grid is reasonably large and it takes a second or so to redraw on a combo drop down.

Is there a way to stop the automatic drop down of the combo box list ? eg filter to the nearest text been typed in but don't drop the combo down as this is what causes the redraw. This would be a semi fix , at least it would work in this screen as it only seldom requires data entry. I hope long term you find a fix for redraw issue as for heavy data entry forms this redraw is interupting the work flow.

I guess i could trigger an event to do something similar with just a text box possibly although it seems a bit of work.
Igor/10Tec
2014-02-05T06:17:32Z
Originally Posted by: Orthello 

Is there a way to stop the automatic drop down of the combo box list ? eg filter to the nearest text been typed in but don't drop the combo down



The RequestEdit event is raised when the user tries to start editing. This event's bCancel parameter passed by ref allows you to cancel editing. Set it to True, find the corresponding combo box item that corresponds to the pressed key (the lCharCode parameter) and assign the corresponding value to the cell value to imitate user selection.