我正在整理这个 Caliburn.Micro 示例项目,但我在使用嵌套视图/视图模型的基于约定的绑定时遇到了问题。
举个例子,假设我有一个 shell 视图 ShellView,由 ShellViewModel 支持,ShellViewModel 是一个屏幕导体。
我在 ShellView 中有一个内容控件绑定到 ActiveItem(使用 x:Name 约定),并且 ActiveItem 的类型为 EmployeeListViewModel,因此生成的视图是 EmployeeListView。嵌套在该视图中的是由EmployeesDetailsViewModel 支持的EmployeeDetailsView,该模型绑定到EmployeeListViewModel 中的所选项目。
这工作正常,除了在 EmployeeDetailsView 中我无法使用 Caliburn 约定绑定文本框和按钮等内容。这工作正常:
<TextBox Text="{Binding EmployeeID}" />
但这些行都不起作用:
<TextBox x:Name="EmployeeID" />
<Button x:Name="ClickMethod" />
文本框文本绑定并不是什么大问题,但自动按钮方法连接是 Caliburn.Micro 最酷的功能之一,但它似乎不适用于嵌套视图。
有任何想法吗?
我有一种感觉,当您将EmployeesDetailsViewModel (SelectedItem) 绑定到EmployeesDetailsView 时,您正在手动执行此操作。 CM 那时还没有把事情做好。您可以发布 SelectedItem 绑定的 xaml 和一些 cs 吗?你试过了吗
<MyUc:EmployeesDetailsView x:Name="SelectedEmployee" />
并挂一个Employee ListView Model的Selected Employee?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)