我目前正在Caliburn.Micro中尝试使用 View 合成。我有一个工作示例,其中通过“View.Model”附加属性路由将多个基于用户控件的 View 注入(inject)到主 shell 中。到现在为止还挺好。
在我的应用程序中,我正在使用主要是WinForms和某些WPF的混合环境,因此没有Caliburn要管理的WPF“ shell ”。我希望能够按需创建 View 并将其添加到WinForms应用程序中的占位符中。
我想知道如何使用Caliburn以编程方式创建 View (将是包含子用户控件的用户控件),以便执行所有约定,模型绑定(bind)和 subview 注入(inject)。
最佳答案
一旦有了 View 实例和相应的 View 模型,就可以使用Caliburn ViewModelBinder
摇柄。调用Bind
可以解析注入(inject)的 View 并应用基于约定的绑定(bind)等:
SomeCompositionView view = new SomeCompositionView();
ISomeCompositionViewModel viewModel = IoC.Get<ISomeCompositionViewModel>();
ViewModelBinder.Bind(viewModel, view, null);
ElementHost.Child = view;
关于Caliburn.Micro:以编程方式创建和绑定(bind) View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6333032/