TreeView consumes UP and DOWN only if it actually changed the selected index. TableView and ListView always consume UP and DOWN. The result is that once you've reached the top of a tree view, the nearest scroll pane ancestor begins scrolling up, but the same does not happen with a table view or list view.
Which way is correct? Whatever is decided should apply to all three components.