VS編程,WPF中兩個滾動條 ScrollViewer 同步滾動的一種方法
阿新 • • 發佈:2019-04-18
9.png hid 聲明 class ESS 定義 如果 src 中一 原文:VS編程,WPF中兩個滾動條 ScrollViewer 同步滾動的一種方法
版權聲明:我不生產代碼,我只是代碼的搬運工。 https://blog.csdn.net/qq_43307934/article/details/83450444
這裏以兩個ScrollViewer控件之間的同步滾動為例。
當鼠標拖動其中一個滾動條時,另一個滾動條跟著一起調整到相應的位置。
?
1、前臺創建兩個ScrollViewer控件,並分別給兩個滾動條控件命名。
<StackPanel Orientation="Horizontal"> <ScrollViewer BorderThickness=" 2" Name="SV1" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"> <TextBlock Width=" 300" Height=" 900" Background="BlanchedAlmond" /> </ScrollViewer> <ScrollViewer BorderThickness=" 2" Name="SV2" Margin=" 50 0" ScrollChanged="SV2_ScrollChanged" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"> <TextBlock Width=" 300" Height=" 900" Background="DeepSkyBlue" /> </ScrollViewer> </StackPanel>
2、給其中一個滾動控件增加ScrollChanged="? "事件
3、在事件中增加如下格式的代碼
ScrollViewer sv = e.OriginalSource as ScrollViewer;
if (sv != null)
{
SV1.ScrollToVerticalOffset(sv.VerticalOffset);
}
像這樣:?
4、如果想讓兩個控件互相影響,則在兩個控件中都定義3中的事件
VS編程,WPF中兩個滾動條 ScrollViewer 同步滾動的一種方法