可以将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