ScrollViewer.ScrollChanged Event
Assembly: PresentationFramework (in presentationframework.dll)
XML Namespace: http://schemas.microsoft.com/winfx/2006/xaml/presentation
/** @event */ public void add_ScrollChanged (ScrollChangedEventHandler value) /** @event */ public void remove_ScrollChanged (ScrollChangedEventHandler value)
In JScript, you can handle the events defined by a class, but you cannot define your own.
<object ScrollChanged="ScrollChangedEventHandler" .../>
This example shows how to raise the ScrollChanged event of a ScrollViewer.
A FlowDocument element with four Paragraphs as defined in Extensible Application Markup Language (XAML). The FlowDocument resides within a parent ScrollViewer, which ensures that a vertical scroll bar will be visible. When the ScrollChanged event occurs, a custom method defined in C# is raised, and text is written to a TextBlock indicating that the event has occurred.
The following sample code is abbreviated. For the complete sample, see ScrollChanged Event Sample.
<ScrollViewer Name="sv1" CanContentScroll="False" ScrollChanged="sChanged"> <FlowDocument FontFamily="Arial" PageWidth="400"> <Paragraph> Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure. </Paragraph>
...
<Paragraph>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut
laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation
ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut
laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation
ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut
laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation
ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure.
</Paragraph>
</FlowDocument>
</ScrollViewer>
The ScrollChanged event is handled in a C# code-behind file. When the ScrollChanged event occurs, a MessageBox displays a message indicating that to the user.
public void sChanged(object sender, ScrollChangedEventArgs e) { if (sv1.CanContentScroll == true) { tBlock1.Foreground = System.Windows.Media.Brushes.Red; tBlock1.Text = "ScrollChangedEvent just Occurred"; tBlock2.Text = "ExtentHeight is now " + e.ExtentHeight.ToString(); tBlock3.Text = "ExtentWidth is now " + e.ExtentWidth.ToString(); tBlock4.Text = "ExtentHeightChange was " + e.ExtentHeightChange.ToString(); tBlock5.Text = "ExtentWidthChange was " + e.ExtentWidthChange.ToString(); tBlock6.Text = "HorizontalOffset is now " + e.HorizontalOffset.ToString(); tBlock7.Text = "VerticalOffset is now " + e.VerticalOffset.ToString(); tBlock8.Text = "HorizontalChange was " + e.HorizontalChange.ToString(); tBlock9.Text = "VerticalChange was " + e.VerticalChange.ToString(); tBlock10.Text = "ViewportHeight is now " + e.ViewportHeight.ToString(); tBlock11.Text = "ViewportWidth is now " + e.ViewportWidth.ToString(); tBlock12.Text = "ViewportHeightChange was " + e.ViewportHeightChange.ToString(); tBlock13.Text = "ViewportWidthChange was " + e.ViewportWidthChange.ToString(); } else { tBlock1.Text = ""; }
Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.