prism - 在 Prism 7.2 中设置 SetDefaultViewModelFactory 的位置
问题描述
应该在 App.xaml.cs 的哪个位置调用 ViewModelLocationProvider.SetDefaultViewModelFactory?
ViewModelLocationProvider.SetDefaultViewModelFactory((type) =>
{
return Container.Resolve(type);
});
应该在 ConfigureViewModelLocator 还是其他地方完成?在 ConfigureViewModelLocator 中,Container 仍然为空。
最好使用容器作为视图模型工厂还是使用 Activator.CreateInstance 的默认行为?
解决方案
应该在 内完成
ConfigureViewModelLocator
吗?
是的。
在 ConfigureViewModelLocator 中,Container 仍然为空。
没关系,在第一个视图模型被解析之前不会调用配置的工厂,这肯定是在初始化容器之后......
最好使用容器作为视图模型工厂吗?
当然,否则您的视图模型将无法接收依赖项。
推荐阅读
- php - TCPDF 报告未显示所有行
- javascript - 为什么在操作中使用符号是不好的做法?
- python - Scrapy登录到网站不成功
- python - 从数组中绘制轮廓和颜色网格
- css - CSS:使用 2 个不同的类和不同的边距相交 2 个 div - 异常或预期行为?
- ajax - 通过ajax将前端裁剪的图像上传到wordpress
- ios - SwiftUI 画布预览为一个视图显示多个视图
- sql - go-pg:将数据推送到现有数组
- java - 将过期证书留在 Java 证书存储区有什么影响?
- mysql - 使用 MySql 版本 8.0.17 更新包含章节、段落和段落内容的表格