我需要实现IScrollInfo接口,这是我读过的一个野兽。但我正在努力应该实施它。
我认为它应该在View中,因为MakeVisible方法中有对Visual的引用。此外,当您设置CanContentScroll =“True”时,ScrollViewer将查找IScrollInfo接口。这意味着安排我的对象的自定义面板将需要通过调用VM的实现来继承ViewModel或将ViewModel包装在视图中。
我错了,它应该在ViewModel中吗?
答案 0 :(得分:4)
我认为IScrollInfo是纯粹的视图。它代表一个“可滚动区域” - 在特定视图之外没有任何意义。 “可滚动区域”中没有涉及业务逻辑,因此,它应该完全不在ViewModel中。
答案 1 :(得分:0)
您在自定义Panel上实现IScrollInfo。因此,它是特定于视图的。然而,有一个扭曲。由于WPF控件的外观模型,控件本身是一种视图模型。