public MetainfoViewModel GetViewModel(IMetainfo model)
 {
     MetainfoViewModel vm;
     if (metainfoViewModels.ContainsKey(model.ID))
     {
         vm = metainfoViewModels[model.ID];
         vm.Model = model;
     }
     else
     {
         vm = new MetainfoViewModel(model, this);
     }
     return vm;
 }
 internal void RegisterViewModel(IMetainfo model, MetainfoViewModel vm)
 {
     if (metainfoViewModels.ContainsKey(model.ID) == false)
         metainfoViewModels.Add(model.ID, vm);
 }
 internal void UnregisterViewModel(IMetainfo model)
 {
     if (metainfoViewModels.ContainsKey(model.ID))
         metainfoViewModels.Remove(model.ID);
 }
 public MetainfoViewModel(IMetainfo model, MainViewModel main)
     : base(main)
 {
     this.model = model;
     main.RegisterViewModel(model, this);
 }