IScrollInfo Interface
[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
Represents the main scrollable region inside a ScrollViewer control.
Namespace: System.Windows.Controls.Primitives
Assembly: PresentationFramework (in PresentationFramework.dll)
The IScrollInfo type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | CanHorizontallyScroll | Gets or sets a value that indicates whether scrolling on the horizontal axis is possible. |
![]() | CanVerticallyScroll | Gets or sets a value that indicates whether scrolling on the vertical axis is possible. |
![]() | ExtentHeight | Gets the vertical size of the extent. |
![]() | ExtentWidth | Gets the horizontal size of the extent. |
![]() | HorizontalOffset | Gets the horizontal offset of the scrolled content. |
![]() | ScrollOwner | Gets or sets a ScrollViewer element that controls scrolling behavior. |
![]() | VerticalOffset | Gets the vertical offset of the scrolled content. |
![]() | ViewportHeight | Gets the vertical size of the viewport for this content. |
![]() | ViewportWidth | Gets the horizontal size of the viewport for this content. |
| Name | Description | |
|---|---|---|
![]() | LineDown | Scrolls down within content by one logical unit. |
![]() | LineLeft | Scrolls left within content by one logical unit. |
![]() | LineRight | Scrolls right within content by one logical unit. |
![]() | LineUp | Scrolls up within content by one logical unit. |
![]() | MakeVisible | Forces content to scroll until the coordinate space of a Visual object is visible. |
![]() | MouseWheelDown | Scrolls down within content after a user clicks the wheel button on a mouse. |
![]() | MouseWheelLeft | Scrolls left within content after a user clicks the wheel button on a mouse. |
![]() | MouseWheelRight | Scrolls right within content after a user clicks the wheel button on a mouse. |
![]() | MouseWheelUp | Scrolls up within content after a user clicks the wheel button on a mouse. |
![]() | PageDown | Scrolls down within content by one page. |
![]() | PageLeft | Scrolls left within content by one page. |
![]() | PageRight | Scrolls right within content by one page. |
![]() | PageUp | Scrolls up within content by one page. |
![]() | SetHorizontalOffset | Sets the amount of horizontal offset. |
![]() | SetVerticalOffset | Sets the amount of vertical offset. |
The IScrollInfo interface exposes access to methods that enable logical scrolling of child content as well as computing which child elements are visible. In addition, it defines properties used to define the scrollable region.
Logical scrolling enables scrolling to the next element in the logical tree. Physical scrolling, in contrast, scrolls content by a defined measurable increment in a specified direction. If you require physical scrolling instead of logical scrolling, wrap the host Panel element in a ScrollViewer and set the value of its CanContentScroll property to false.
This example shows how to scroll content by using the IScrollInfo interface.
The following example demonstrates the features of the IScrollInfo interface. The example creates a StackPanel element in Extensible Application Markup Language (XAML) that is nested in a parent ScrollViewer. The child elements of the StackPanel can be scrolled logically by using the methods defined by the IScrollInfo interface and cast to the instance of StackPanel (sp1) in code.
<Border BorderBrush="Black" Background="White" BorderThickness="2" Width="500" Height="500"> <ScrollViewer Name="sv1" CanContentScroll="True" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"> <StackPanel Name="sp1"> <Button>Button 1</Button> <Button>Button 2</Button> <Button>Button 3</Button> <Button>Button 4</Button> <Button>Button 5</Button> <Rectangle Width="700" Height="500" Fill="Purple"/> <TextBlock>Rectangle 1</TextBlock> <Rectangle Width="700" Height="500" Fill="Red"/> <TextBlock>Rectangle 2</TextBlock> <Rectangle Width="700" Height="500" Fill="Green"/> <TextBlock>Rectangle 3</TextBlock> </StackPanel> </ScrollViewer> </Border>
Each Button in the XAML file triggers an associated custom method that controls scrolling behavior in StackPanel. The following example shows how to use the LineUp and LineDown methods; it also generically shows how to use all the positioning methods that the IScrollInfo class defines.
Windows 8 Consumer Preview, Windows Server 8 Beta, Windows 7, Windows Server 2008 SP2, Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
