Oliver
  • Oliver
  • Advanced Member Topic Starter
2015-01-19T12:58:12Z
I do some "Filtering" in my iGrids based on custom context menus and setting appropriate rows visible/invisible. After that, I want to determine the total number of rows, which I can get via .Sys(igSysRowsVisScrollCount). Now the question:

I also want to show the number (not index!) of the row that currently has the focus. Using .CurRow() gets me the index, which can lead to displays of "Row 12 of 5", because there initially were 12 rows and all but the last 5 are invisible now. Maybe I can calculate that somehow?

Regards,
Oliver
Igor/10Tec
2015-01-20T16:11:34Z
I think you wanted to write "can retrieve that somehow" meaning there is a property that returns the visible row index.

Sorry, but you really need to calculate it by yourself by enumerating visible rows.
Oliver
  • Oliver
  • Advanced Member Topic Starter
2015-01-26T09:32:58Z
Originally Posted by: Igor/10Tec 

I think you wanted to write "can retrieve that somehow" meaning there is a property that returns the visible row index.

Sorry, but you really need to calculate it by yourself by enumerating visible rows.



Hmm, enumerating all visible rows is a bit expensive. Sometimes the iGrids have up to 2000 rows. Itried to count them in the .CurCellChange Event, but you can feel the delay that the counting causes and it's not worth letting the user wait.

Maybe you can think about that for a future version of the control. My guess is that internally the iGrid could easily access that information and just needs to expose it via another .Sys paramter, just like the igSysRowsVisScrollCount.

Thanks for investigating,

Oliver
Igor/10Tec
2015-01-26T15:59:04Z
I would provide you with these values if we had them internally. Unfortunately, we only have the odd/even status calculated for our rows this way.

Quote:

I tried to count them in the .CurCellChange Event, but you can feel the delay that the counting causes and it's not worth letting the user wait.



I think you need to do that just once if the visibility status of a row is changed.

And you want to say it takes a significant amount of time for 2000 rows. Can you show us your code?
Igor/10Tec
2015-12-01T15:17:04Z
iGrid ActiveX 6.0 implements a dedicated property for that. It's RowVisibleIndex. For columns, it's ColVisibleIndex.