熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

解決ScrollViewer滾動問題的辦法

2013-11-13 10:40:36  來源: .NET編程 

  C# 中兩個ScrollViewer嵌套在一起或者ScrollViewer裡面嵌套一個ListBoxListview(控件本身有scrollviewer)的時候我們本想要的效果是鼠標滾動整個ScrollViewer的內容但你會發現實際結果和你想像的不一樣內部有scrollviewer的內容不會隨鼠標的滾動而滾動怎麼辦呢?
解決辦法如下
先截取外面的ScrollViewer的滾動事件然後再重新讓外面的ScrollViewer觸發滾動事件就可以了
假設有個控件一個是Listbox(內部名字是listbox)一個是ScrollViewer(外部)Listbox在ScrollViewer內部的並且ListBox的scroll滾動功能都禁用為Disabled只啟用外部ScrollViewer的滾動功能這時添加如下代碼則能使ListBox中的內容隨ScrollViewer的鼠標滾動而滾動

listboxPreviewMouseWheel+=(sendere)
{
var eventArg = new MouseWheelEventArgs(eMouseDeviceeTimeDeviceeDelta);
eventArgRoutedEvent = UIElementMouseWheelEvent;
eventArgSource = sender;
thislistboxRaiseEvent(eventArg);
};


From:http://tw.wingwit.com/Article/program/net/201311/14273.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.