Updated: July 2009
Gets or sets a value that indicates whether elements that support the IScrollInfo interface are allowed to scroll. This is a dependency property.
Public Property CanContentScroll As Boolean
Dim instance As ScrollViewer Dim value As Boolean value = instance.CanContentScroll instance.CanContentScroll = value
public bool CanContentScroll { get; set; }
public: property bool CanContentScroll { bool get (); void set (bool value); }
public function get CanContentScroll () : boolean public function set CanContentScroll (value : boolean)
<object CanContentScroll="bool" .../>
Identifier field
CanContentScrollProperty
Metadata properties set to true
None
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. This is how item scrolling is achieved in ListBox, ListView and other controls that inherit from ItemsControl. If CanContentScroll is true, the values of the ExtentHeight, ScrollableHeight, ViewportHeight, and VerticalOffset properties are number of items, instead of a physical unit.
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.
The following example demonstrates how to set the CanContentScroll property by using code. For the complete sample, see ScrollChanged Event Sample.
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
private void scrollTrue(object sender, RoutedEventArgs e) { sv1.CanContentScroll = true; sv1.Height = 600; myStackPanel.Visibility = Visibility.Visible; btn1.Visibility = Visibility.Collapsed; }
Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003
Date
History
Reason
July 2009
Clarified remarks.
Content bug fix.
February 2009
Corrected default value.