1
2
我认为这是一个让MVVM走得太远的案例。当然,MVVM并没有被精确定义,但我认为它是试图将我的应用程序高级机制和行为与那些机制和行为如何使用特定的UI技术实现的细节分开的(当然,现在只是WPF,但我发现假装可能还有其他东西是有用的)。 不知道应用程序对鼠标事件的反应如何,很难给出具体的建议或意见。基于我 做 我认为坐标转换最好留在UI层中,然后通过方法调用将转换后的坐标传递给ViewModel。 |
2
1
如果您担心通过将视图对象传递给视图模型来破坏可测试性,请创建一个用于在三维点和二维点之间转换的接口,然后将其传递给视图模型。在您的代码后面,然后通过
除此之外,我不会担心代码隐藏中的事件处理程序。对于所有容易的事情都使用绑定,对于真正棘手的部分使用代码隐藏。 |
3
0
我最终使用了MVVM信使。因此,鼠标事件在代码隐藏中得到处理,然后它发送一条消息,说明事件发生了。然后,我的视图模型可以订阅此消息并接收通知。像一个魅力,保持一切脱钩。 |
Basj · 即使距离为3像素,也能检测到SVG线上的点击 2 年前 |
wendykr · JavaScript画布和鼠标位置 6 年前 |
Fajer Albloushi · 根据给定坐标移动鼠标 6 年前 |
HKVariant · 当玩家旋转到圆周率时,旋转速度为360 6 年前 |
Max · jQuery:鼠标跟随元素在滚动时不会粘住光标 6 年前 |