ScrollViewer.CanContentScroll Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets a value that indicates whether elements that support the IScrollInfo interface are allowed to scroll.
public:
property bool CanContentScroll { bool get(); void set(bool value); };
public bool CanContentScroll { get; set; }
member this.CanContentScroll : bool with get, set
Public Property CanContentScroll As Boolean
Property Value
true
if the ScrollViewer scrolls in terms of logical units; false
if the ScrollViewer scrolls in terms of physical units. The default is false
.
Examples
The following example demonstrates how to set the CanContentScroll property by using code.
private void scrollTrue(object sender, RoutedEventArgs e)
{
svrContent.CanContentScroll = true;
svrContent.Height = 600;
myStackPanel.Visibility = Visibility.Visible;
btnEnableContentScrolling.Visibility = Visibility.Collapsed;
}
Private Sub scrollTrue(ByVal sender As Object, ByVal args As RoutedEventArgs)
sv1.CanContentScroll = True
sv1.Height = 600
myStackPanel.Visibility = Visibility.Visible
btn1.Visibility = Visibility.Collapsed
End Sub
Remarks
Content in a ScrollViewer can be scrolled in terms of physical units or logical units. Physical units are device independent pixels. Logical units are used for scrolling items within an ItemsControl. The default behavior of the ScrollViewer is to use physical units to scroll its content. However, in cases where the CanContentScroll is set to true
, the content could use logical units to scroll. For example, ListBox, ListView, and other controls that inherit from ItemsControl use logical units to scroll. If CanContentScroll is true
, the values of the ExtentHeight, ScrollableHeight, ViewportHeight, and VerticalOffset properties are number of items, instead of physical units.
If you require physical scrolling instead of logical scrolling, wrap the host Panel element in a ScrollViewer and set its CanContentScroll property to false
. Physical scrolling is the default scroll behavior for most Panel elements.
Dependency Property Information
Item | Value |
---|---|
Identifier field | CanContentScrollProperty |
Metadata properties set to true |
None |