我正在使用MVVM Light Toolkit开发WPF应用程序,并绑定一个Item Control到一个组织集合。其中,组织由组织名称和列表组成,项目由项目名称、列表和新员工组成,而员工则由员工姓名、联系电话和电子邮件组成。在这种情况下,员工本身是一个可以在现有和新员工数据中重复使用的用户控件。用户可以在每个控件的“失去焦点”事件上更新现有员工的详细信息(即列表)。当涉及添加新员工时,我使用了用户控件“失去焦点”事件来处理该情况。因此,在用户控件失去焦点事件上,我使用MVVM Light Toolkit的EventToCommand将EventArgs传递给ViewModel,然后从EventArgs中查找Original Source(或通过遍历可视树)来确定是否通过检查IsKeyboardFocusWithin属性来插入它。它是否在同一用户控件内。这是否是正确的MVVM模式实现方法?另外,通过以上方法,我必须:1)遍历可视树或从EventArgs中获取Original Source,以便引用System.Windows.Controls;2)在进行单元测试时,更难模拟EventArgs。那么,是否有更好的MVVM方法来处理这种情况...