程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> 解決ScrollViewer滾動問題的辦法

解決ScrollViewer滾動問題的辦法

編輯:關於ASP.NET

     C# 中,兩個ScrollViewer嵌套在一起或者ScrollViewer裡面嵌套一個ListBox、Listview(控件本身有scrollviewer)的時候,我們本想要的效果是鼠標滾動整個ScrollViewer的內容,但你會發現實際結果和你想像的不一樣,內部有scrollviewer的內容不會隨鼠標的滾動而滾動,怎麼辦呢?
    解決辦法如下:
    先截取外面的ScrollViewer的滾動事件,然後再重新讓外面的ScrollViewer觸發滾動事件就可以了
    假設有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);
    };

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved