ILogicalScrollable Interface

Summary

Interface implemented by controls that handle their own scrolling when placed inside a ScrollViewer.
graph BT Type-.->Interface0["IScrollable"] click Interface0 "/api/Avalonia.Controls.Primitives/IScrollable" Type["ILogicalScrollable"] class Type type-node Implementing0["ItemsPresenter"]-.->Type click Implementing0 "/api/Avalonia.Controls.Presenters/ItemsPresenter" Implementing1["DateTimePickerPanel"]-.->Type click Implementing1 "/api/Avalonia.Controls.Primitives/DateTimePickerPanel"

Syntax

public interface ILogicalScrollable : IScrollable

Remarks

Controls that implement this interface, when placed inside a ScrollViewer can override the physical scrolling behavior of the scroll viewer with logical scrolling. Physical scrolling means that the scroll viewer is a simple viewport onto a larger canvas whereas logical scrolling means that the scrolling is handled by the child control itself and it can choose to do handle the scroll information as it sees fit.

Events

Name Type Summary
ScrollInvalidated EventHandler
Raised when the scroll is invalidated.

Properties

Name Value Summary
CanHorizontallyScroll bool
Gets or sets a value indicating whether the content can be scrolled horizontally.
CanVerticallyScroll bool
Gets or sets a value indicating whether the content can be scrolled horizontally.
IsLogicalScrollEnabled bool
Gets a value indicating whether logical scrolling is enabled on the control.
PageScrollSize Size
Gets the size to page by, in logical units.
ScrollSize Size
Gets the size to scroll by, in logical units.

Methods

Name Value Summary
BringIntoView(IControl, Rect) bool
Attempts to bring a portion of the target visual into view by scrolling the content.
GetControlInDirection(NavigationDirection, IControl) IControl
Gets the next control in the specified direction.
RaiseScrollInvalidated(EventArgs) void
Raises the ScrollInvalidated event.