解決ScrollViewer滾動問題的辦法
來源:易賢網 閱讀:2150 次 日期:2014-08-29 11:00:53
溫馨提示:易賢網小編為您整理了“解決ScrollViewer滾動問題的辦法”,方便廣大網友查閱!

C# 中,兩個ScrollViewer嵌套在一起或者ScrollViewer里面嵌套一個ListBox、Listview(控件本身有scrollviewer)的時候,我們本想要的效果是鼠標滾動整個ScrollViewer的內容,但你會發(fā)現實際結果和你想像的不一樣,內部有scrollviewer的內容不會隨鼠標的滾動而滾動,怎么辦呢?

解決辦法如下:

先截取外面的ScrollViewer的滾動事件,然后再重新讓外面的ScrollViewer觸發(fā)滾動事件就可以了

假設有2個控件,一個是Listbox(內部名字是listbox),一個是ScrollViewer(外部),Listbox在ScrollViewer內部的,并且ListBox的scroll滾動功能都禁用為Disabled,只啟用外部ScrollViewer的滾動功能,這時添加如下代碼,則能使ListBox中的內容隨ScrollViewer的鼠標滾動而滾動

listbox.PreviewMouseWheel+=(sender,e)

{

var eventArg = new MouseWheelEventArgs(e.MouseDevice,e.TimeDevice,e.Delta);

eventArg.RoutedEvent = UIElement.MouseWheelEvent;

eventArg.Source = sender;

this.listbox.RaiseEvent(eventArg);

};

更多信息請查看IT技術專欄

更多信息請查看網絡編程
易賢網手機網站地址:解決ScrollViewer滾動問題的辦法
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網