[英]Synchronizing Two Rich Text Box Scroll bars in WPF
我研究了同步富文本框滾動條的方法,但僅遇到Winforms的解決方案或方法,但在WPF應用程序中不起作用。 如果有人在WPF中做到了這一點,並且可以提供實現該目標的指導/代碼/指南,將不勝感激。 我是WPF的新手,歡迎任何幫助。 謝謝。
您可以使用ScrollViewer.ScrollChanged
路由事件來偵聽滾動更改。 例:
<UniformGrid Rows="1" Width="300" Height="150" >
<RichTextBox x:Name="_rich1"
VerticalScrollBarVisibility="Auto"
ScrollViewer.ScrollChanged="RichTextBox_ScrollChanged" />
<RichTextBox x:Name="_rich2"
VerticalScrollBarVisibility="Auto"
ScrollViewer.ScrollChanged="RichTextBox_ScrollChanged" />
</UniformGrid>
然后,在事件處理程序中進行實際的同步(代碼 被偷 受其他答案啟發):
private void RichTextBox_ScrollChanged(object sender, ScrollChangedEventArgs e)
{
var textToSync = (sender == _rich1) ? _rich2 : _rich1;
textToSync.ScrollToVerticalOffset(e.VerticalOffset);
textToSync.ScrollToHorizontalOffset(e.HorizontalOffset);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.