我提供了三种不同形式的模型,它们表示Employee 对象为空、处于编辑状态和已保存状态时。我没有使用 WPF 或 Silverlight,而是使用WinRT / Windows Store。
实现此 UI 的方法很少。第一种方法是拥有三个不同的用户控件。当有 10 个这样的实体 - 30 个表格来管理一个实体的状态时,这太多了。单个用户控件包含一个包含三个不同数据模板的内容控件和一个内容模板选择器,比以前的方法更易于管理。
我知道VisualStateManager适用于其视觉状态必须根据事件发生变化的控件。VisualStateManager 对我上面描述的 UI 场景有用吗?或者使用带有内容模板选择器的内容控件是解决这个问题的正确方法?
技术挑战是应用程序有许多实体/对象,并且第一个屏幕(空状态)至少应该可用于所有实体。第二种和第三种形式不可能是因为它们对于每个实体都是不同的。
请分享您解决此问题的方法 - DataTemplate Vs VisualStateManager Vs Style?