Class LineScrollAxis
The LineScrollAxis implements scrolling only for whole lines. You can hide lines and LineScrollAxis provides a mapping mechanism between the index of the line and the scroll index and vice versa. Hidden lines are not be counted when the scroll index is determined for a line.
The LineScrollAxis does not support scrolling in between lines (pixel scrolling). This can be of advantage if you have a large number of lines with varying line sizes. In such case the LineScrollAxis does not need to maintain a collection that tracks line sizes whereas the PixelScrollAxis does need to.
Implements
Inherited Members
Namespace: Syncfusion.Maui.GridCommon.ScrollAxis
Assembly: Syncfusion.Maui.GridCommon.dll
Syntax
public class LineScrollAxis : ScrollAxisBase, IDisposable
Constructors
LineScrollAxis(IScrollBar, ILineSizeHost)
Initializes a new instance of the LineScrollAxis class.
Declaration
public LineScrollAxis(IScrollBar sb, ILineSizeHost scrollLinesHost)
Parameters
Type | Name | Description |
---|---|---|
IScrollBar | sb | The state of the scrollbar. |
ILineSizeHost | scrollLinesHost | The scroll lines host. |
Properties
DefaultLineSize
Gets or sets the default size of lines.
Declaration
public override double DefaultLineSize { get; set; }
Property Value
Type | Description |
---|---|
System.Double | The default size of lines. |
Overrides
FooterExtent
Gets the footer extent. This is total height (or width) of the footer lines.
Declaration
public override double FooterExtent { get; }
Property Value
Type | Description |
---|---|
System.Double | The footer extent. |
Overrides
HeaderExtent
Gets the header extent. This is total height (or width) of the header lines.
Declaration
public override double HeaderExtent { get; }
Property Value
Type | Description |
---|---|
System.Double | The header extent. |
Overrides
IsPixelScroll
Gets a value indicating whether this axis supports pixel scrolling.
Declaration
public override bool IsPixelScroll { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
|
Overrides
LineCount
Gets or sets the line count.
Declaration
public override int LineCount { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 | The line count. |
Overrides
ScrollLineIndex
Gets or sets the index of the first visible Line in the Body region.
Declaration
public override int ScrollLineIndex { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 | The index of the scroll line. |
Overrides
ViewSize
Gets the view size of the (either height or width) of the parent control. Normally the ViewSize is the same as RenderSize. Only if the parent control has more space then needed to display all lines, the ViewSize will be less. In such case the ViewSize is the total height for all lines.
Declaration
public override double ViewSize { get; }
Property Value
Type | Description |
---|---|
System.Double | The size of the view. |
Overrides
Methods
AlignScrollLine()
Aligns the scroll line.
Declaration
public override void AlignScrollLine()
Overrides
GetNextScrollLineIndex(Int32)
Gets the index of the next scroll line.
Declaration
public override int GetNextScrollLineIndex(int index)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | index | The index. |
Returns
Type |
---|
System.Int32 |
Overrides
GetPreviousScrollLineIndex(Int32)
Gets the index of the previous scroll line.
Declaration
public override int GetPreviousScrollLineIndex(int index)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | index | The index. |
Returns
Type |
---|
System.Int32 |
Overrides
GetScrollLineIndex(out Int32, out Double, Boolean)
Gets the index of the scroll line.
Declaration
public override void GetScrollLineIndex(out int scrollLindeIndex, out double scrollLineDelta, bool isRightToLeft)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | scrollLindeIndex | Index of the scroll linde. |
System.Double | scrollLineDelta | The scroll line delta. |
System.Boolean | isRightToLeft | The boolean value used to calculate visible columns in right to left mode. |
Overrides
MouseWheel(Int32)
This method is called in response to a MouseWheel event.
Declaration
public override void MouseWheel(int delta)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | delta | The delta. |
Overrides
OnLinesInserted(Int32, Int32)
Called when lines were inserted in ScrollLinesHost.
Declaration
protected override void OnLinesInserted(int insertAt, int count)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | insertAt | Index of the first inserted line. |
System.Int32 | count | The count. |
Overrides
RangeToPoints(ScrollAxisRegion, Int32, Int32, Boolean)
Returns the first and last point for the given lines in a region.
Declaration
public override DoubleSpan RangeToPoints(ScrollAxisRegion region, int first, int last, bool allowEstimatesForOutOfViewLines)
Parameters
Type | Name | Description |
---|---|---|
ScrollAxisRegion | region | The region. |
System.Int32 | first | The index of the first line. |
System.Int32 | last | The index of the last line. |
System.Boolean | allowEstimatesForOutOfViewLines | if set to |
Returns
Type |
---|
DoubleSpan |
Overrides
RangeToRegionPoints(Int32, Int32, Boolean)
Returns an array with 3 ranges indicating the first and last point for the given lines in each region.
Declaration
public override DoubleSpan[] RangeToRegionPoints(int first, int last, bool allowEstimatesForOutOfViewLines)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | first | The index of the first line. |
System.Int32 | last | The index of the last line. |
System.Boolean | allowEstimatesForOutOfViewLines | if set to |
Returns
Type |
---|
DoubleSpan[] |
Overrides
ScrollInView(Int32, Double)
Scrolls the line into viewable area.
Declaration
public override void ScrollInView(int lineIndex, double lineSize)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | lineIndex | Index of the line. |
System.Double | lineSize |
Overrides
ScrollToNextLine()
Scrolls to next line.
Declaration
public override void ScrollToNextLine()
Overrides
ScrollToNextPage()
Scrolls to next page.
Declaration
public override void ScrollToNextPage()
Overrides
ScrollToPreviousLine()
Scrolls to previous line.
Declaration
public override void ScrollToPreviousLine()
Overrides
ScrollToPreviousPage()
Scrolls to previous page.
Declaration
public override void ScrollToPreviousPage()
Overrides
SetFooterLineCount(Int32)
Sets the footer line count.
Declaration
protected override void SetFooterLineCount(int value)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | value | The value. |
Overrides
SetHeaderLineCount(Int32)
Sets the header line count.
Declaration
protected override void SetHeaderLineCount(int value)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | value | The value. |
Overrides
SetLineHiddenState(Int32, Int32, Boolean)
Sets the hidden state of the lines.
Declaration
public override void SetLineHiddenState(int from, int to, bool hide)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | from | From. |
System.Int32 | to | To. |
System.Boolean | hide | if set to |
Overrides
SetLineSize(Int32, Int32, Double)
Sets the size of the lines. Will do nothing for a LineScrollAxis
Declaration
public override void SetLineSize(int from, int to, double size)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | from | From. |
System.Int32 | to | To. |
System.Double | size | The size. |
Overrides
SetScrollLineIndex(Int32, Double)
Sets the index of the scroll line.
Declaration
public override void SetScrollLineIndex(int scrollLindeIndex, double scrollLineDelta)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | scrollLindeIndex | Index of the scroll linde. |
System.Double | scrollLineDelta | The scroll line delta. |
Overrides
UpdateScrollBar()
Initialize scrollbar properties from line count in header, footer and body.
Declaration
public override void UpdateScrollBar()