2010-07-07 88 views
0

我想覆蓋MouseWheel的事件處理程序的ScrollViewer。由於ScrollViewer是密封的,我不能簡單地創建一個「自定義」類繼承它。我想通用的問題是:「我如何覆蓋默認事件。」 (或類似的東西;-))覆蓋作爲ScrollViewer的自定義事件處理程序

編輯:只有當ScrollViewer無法滾動或達到限制時,纔會觸發應取代默認「滾動」的事件。

回答

1

由於ScrollViewer被封閉,所以很難覆蓋它的行爲。 ScrollChanged事件只提供只讀信息,不能取消。您可能必須實現自己的從ContentControl派生的滾動查看器。您試圖實施什麼樣的滾動行爲?

+0

那麼我想創建一個「拖動滾動」 - 只有ScrollViewer,用戶可以使用鼠標滾輪縮放,但我想實際上很容易實現這一點,根本不使用ScrollViewer。 – 2010-07-07 17:00:58

0

在您的事件處理程序中,請在返回之前將MouseWheelEventArgs參數的Handled屬性設置爲true

+0

不工作,ScrollViewer仍然滾動。 – 2010-07-07 15:22:33

相關問題