1
2
请不要试图在视图模型中乱处理视觉状态。考虑到这一点,您的视图模型是用来处理视图所需的底层数据的。这与在视图中显示数据不同。另一方面,您的视图具有呈现数据的逻辑,并且可以根据特定的触发器以不同的视觉状态进行呈现。这些触发器是视觉触发器,而不是数据触发器。因此,您应该处理视图中的可视状态和视图背后的隐式代码。 如果数据影响视图,例如用户突然注销或其他情况,那么这也是视图模型中用于更改视觉状态的属性(如IsLoggedIn)。如果您试图在视图模型中获取对视觉状态的引用,那么您就有点违背了MVVM的意图。 话虽如此,我不是你的应用程序的开发者,你是。而且,您正在显示的代码是可靠地获取当前视觉状态的唯一方法。值得指出的是,在多个视觉状态组中,一次可以有多个可视状态处于活动状态。在视图模式下,如果没有对可视状态组类的直接引用,您怎么可能运行所提供的代码?如何到达那里?
但我希望你考虑一下其余的答案。 |
uwp · 数据模板内的访问弹出对话框 8 年前 |