可以將WPF DataGrid類(不是Windows窗體DataGrid!)設置爲在沒有外部ScrollViewer的情況下自動處理滾動,並且可以爲控件的內部註冊事件處理程序通過滾動條等一樣寫XAML:附加事件?如何在運行時刪除WPF DataGrid的ScrollChanged事件處理程序
<DataGrid ScrollViewer.ScrollChanged="dGrid_ScrollChanged" />
糾正我,如果我錯了,但在這種情況下,內部的ScrollViewer似乎是某種形式的無證附加屬性。 ScrollViewer不是DataGrid的公共字段,您將在DataGrid文檔中找不到對ScrollViewer或ScrollChanged事件的引用。換句話說,簡單地做myDataGrid.ScrollViewer.ScrollChanged += dGrid_ScrollChanged
不起作用。
所以我的問題是,如何在運行時爲此ScrollChanged事件添加或刪除事件處理程序?我試圖理解這裏發生的事情,儘可能多地解決問題,讓更多的解釋變得更好。
更新了我的回答與評論。希望這可以幫助。 –
這真的有用嗎?你不應該在'RemoveHandler'中傳遞'Delegate'的同一個實例嗎? – JobaDiniz