I am using jqGrid in virtual mode (i.e. paging is being done via a scrollbar). Firstly I had a problem that sometimes when scrolling by large distance (for example, from the start to the middle) no requests to server were sent and no new data appeared in the grid. But when scrolling by small distance requests were sent and data appeared in the grid. I noticed that the problem can be solved by playing with scrollLeftOffset property, but the problem is I don't actually understand how this property works. I would like to know how to caluculate this property properly, knowing total count of records and page size.
Basically scrollLeftOffset controll dynamically the appearance of the scroll dialog information when virtual scrolling is enabled and scrollPopUp is set to true
As from the Guriddo documentation it has the following meaning:
Determines the left offset of the box which appear when virtual scroll
is enabled and scrollPopUp parameter is set to true. The information
does appear when we use the mouse to scroll through the pages. The
value of 0% set the box to appear at upper left corner of the grid.
See scrollPopUp and scrollTopOffset parameters. Default value : 100%
It is available only in Guriddo jqGrid from version 4.8
Related
I want to use kendo-ui-grid server paging with virtual scrolling and encountered a problem I don't know how to solve
It's shown in here:
http://dojo.telerik.com/uyEje
Try scrolling to row number 2M.
Anybody has any idea?
According to the Kendo UI documentation ...
"Virtual scrolling relies on a fake scrollbar. Its size is not determined by the browser, but is calculated based on the average row height of the data that is already loaded. As a result, variable row heights may cause unexpected behavior, such as inability to scroll to the last rows on the last page. To ensure that all table rows have the same heights, use either of the options: (1) Disable text wrapping. (2) Set an explicit row height that is large enough (as demonstrated in the following example)."
I am using a ZedGraphControl in a WindowsForms project in C#. The ZedGraphControl is V5.1.5.
The data in the control is static and I add it all before the form is shown. The X axis of the data consists of numbers indicating seconds offset from the beginning. in other words from 0 to some number of seconds.
I want to initially show the last 5 seconds, but provide a horizontal scrollbar so the user can scroll back and forth. I set the "graphPane.XAxis.Scale.Max = maxX;" where maxX is the largest X value in my data. I set the "graphPane.XAxis.Scale.Min = maxX - 5;".
The data starts off displaying the way I want it, but when the user scrolls the horizontal bar, bizzar behavior occurs.
As you drag the thumb of the scrollbar to the left, the beginning of the data shown in the grid moves to the lower values as expected, and the thumb of the scrollbar moves to the left, but the right edge of the thumb stays at the right of the scrollbar and you cannot move back to the right. It is as if the data to the right of the viewing range gets truncated as you scroll left.
I cannot find any reason for this nor any way to control it. Does anyone have any ideas about this behavior?
Ok, found it myself.
I found a fine article that describes scrolling:
Add a ScrollBar
In it the author specifically says "the scrolling will be wacky because the scrollable range has not been set".
I used the sample "Manually Setting the Scroll Range" and the part that I was missing is setting the zedGraphControl1.ScrollMinX and zedGraphControl1.ScrollMaxX properties. Once I defined these values everything started working as expected. I also found that in my case, the value of zedGraphControl1.IsAutoScrollRange had no effect, but I left it set to false to be consistent with the example. This would probably have an effect if the dataset is dynamic.
I am creating one user control in windows form. It is some data entry form. The application opens in minimize mode initially. And the from looks good in minimization mode. But when i maximize the form is not getting filled up. I mean the there is lot of room in maximize mode. The form should grow size according to minimize or maximize. The form has tab control, group box and grid view. thanks.
If I understand your problem correctly, check your anchor points of the controls on your form. Also, check that form controls are set to grow and shrink, as you see fit. The combination of the two may fix your problem.
I have implemented a slickgrid and activated keyboard navigation.
When the users is scrolling down using the down-arrow key and reaches the last of the currently visible rows, the grid loads a whole new section of rows and places the selection at the top.
My user tests have all included a complaint about this behaviour as they all find the jump jarring.
I would like to implement behaviour, so the grid scrolls just one line at a time, when I press the down arrow while the last visible row is selected.
I was wondering if there might be some setting, I have overlooked, or if anyone has some suggestions for how to approach the task of adding this behaviour.
(the "problem" is the same, when you scroll upwards - only reversed of course)
This is controlled by the doPaging argument in scrollRowIntoView(row, doPaging) (https://github.com/mleibman/SlickGrid/blob/master/slick.grid.js#L2662). There's no setting to control that behavior, but you could easily add one.
It was initially written this way to make keyboard navigation faster since continuously navigating down doesn't have to do as much work as it would have if we were updating the grid on every 'row down'.
I am trying to use a DataGrid with hidden group row headers (so that there is a sort boundary). My style simply sets the visibility to collapsed (and I also am setting the SublevelIndent to 0 during the LoadingGroup event). Initial display is exactly what I want, but the data grid is sorted the appearance is unstyled, and the default indent is apparent. (When debugging the style is still present, and the sublevelindent still says 0).
I encountered this in the past also. I beleive you have to attach the LoadingRowGroup event and reset applicable properties on the e.RowGroupHeader.