[英]how to bind dataviewmodel in module using prism wpf mvvm?
我的Prisam应用程序“正在初始化模块”成功通过视图模块填充调用模块视图。 但是俯视图没有设置detacontex视图模块。要添加模块,我可以使用以下代码:
protected override void ConfigureModuleCatalog()
{
base.ConfigureModuleCatalog();
ModuleCatalog moduleCatalog = (ModuleCatalog)this.ModuleCatalog;
moduleCatalog.AddModule(typeof(ModuleR1Customer.ViewModule.CustomerViewModules));
moduleCatalog.AddModule(typeof(ModuleR2Order.ViewModule.OrderViewModules));
}
如何解决这个问题? 请帮我。
这就是您所需要的。 -创建一个通用接口IViewModel
IView
和一个用于该视图的特殊接口( ITiersView
)。 通过实现对View的特殊接口,后面的视图代码如下所示:
public interface IViewModel
{
}
public interface IView
{
IViewModel ViewModel
{
get;
set;
}
}
public interface ITiersView : IView
{
}
//My View
public partial class Tiers : UserControl , ITiersView
{
public Tiers(ITiersViewModel tiersViewModel)
{
InitializeComponent();
ViewModel = tiersViewModel;
}
public SmartStock.Infrastructure.IViewModel ViewModel
{
get
{
return (ITiersViewModel)DataContext;
}
set
{
DataContext = value;
}
}
}
要进行此加载,您需要在modulinit类中使用Unity容器 ,如下所示:
_container.RegisterType<ITiersView, Tiers>();
_container.RegisterType<ITiersViewModel, TiersViewModel>();
IRegion Content = _regionManager.Regions[RegionNames.ContentRegion];
var TiersView = _container.Resolve<ITiersView>();
RibbonRegion.Add(TiersView);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.