zoukankan      html  css  js  c++  java
  • MvvMlight 学习之 SimpleIoc

     1 SimpleIoc 是一个简单依赖注入容器;
     2 
     3 例:Mainviewmodel需要使用一个服务或类,假设我需要的person类
     4 
     5 首先将实现的服务注册到SimpleIOC,
     6 SimpleIoc.Default.Register<Person>(()=>new Person());
     7 然后把Mainviewmodel也注册到SimpleIOC,
     8 SimpleIoc.Default.Register<MainViewModel>();
     9 
    10 
    11 你可以通过ServiceLocator.Current.GetInstance<MainViewModel>();来获取一个Mainviewmodel的实例,
    并且根据Mainviewmodel的构造参数在SimpleIOC中寻找匹配的对象,然后就可以使用了;
    12 13 public class ViewModelLocator 14 { 15 static ViewModelLocator() 16 { 17 ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);//设置默认的SimpleIOC 18 SimpleIoc.Default.Register<Person>(()=>new Person());//将自己的类注册到SimpleIOC 19 20 SimpleIoc.Default.Register<MainViewModel>();//把Mainviewmodel也注册到SimpleIOC 21 } 22 public MainViewModel Main 23 { 24 get 25 { 26 return ServiceLocator.Current.GetInstance<MainViewModel>();//获取Mainviewmodel的实例 27 } 28 } 29 } 30 31 32 public MainViewModel(Person data)///Mainviewmodel的构造参数,匹配Person类 33 { 34 WelcomeTitle =data.Name; 35 }
  • 相关阅读:
    红楼【建筑位置】
    红楼【人物关系】
    jenkins【shared-libraries】
    linux 安装mysql8.0 tar.xz
    MySQL 输入字符串对日期进行模糊查询
    解决kali linux 和 win10 双系统时间不一致问题
    linux idea桌面图标
    linux卸载openjdk11
    tar.xz解压
    pandas模块高性能使用方法总结
  • 原文地址:https://www.cnblogs.com/yeshuimaowei/p/5310365.html
Copyright © 2011-2022 走看看