mvvmcross - MvxSimpleIoCContainer 和多个具体实现

标签 mvvmcross

如果我有接口(interface) IMvxScreen 和多个实现 IMvxScreen 的具体类,是否可以一次解析所有实现?

public MyClass(IScreen[] screens) 
  {

最佳答案

不 - 目前不可能。

您必须提供一个单独的接口(interface)/对象 - 例如一个IScreenService

假设您的所有屏幕都在同一个程序集中,我想您可以使用以下服务来提供此服务:

 public interface IScreenService
 {
     IEnumerable<IScreen> CreateAll();
 }

 public class ScreenService : IScreenService
 {
     public IEnumerable<IScreen> CreateAll()
     {
         return this.GetType().Assembly
                            .CreatableTypes()
                            .Inherits<IScreen>()
                            .Select(t => Mvx.IocConstruct(t));
     }
 }

关于mvvmcross - MvxSimpleIoCContainer 和多个具体实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16464766/

相关文章:

xamarin - Release模式下的 mvvmcross 绑定(bind)

sqlite - Mono.Data.Sqlite.SqliteConnection 需要一个没有意义的 'System' 版本

ios - MvvmCross - TableViewCell 与值转换器的延迟绑定(bind) - DataContext 设置不正确?

ios - 在 VS2015 RC 上将 MVVMCross Nuget 包添加到 Xamarin iOS 失败

android - 倒计时 MVVMCross 与 Xamarin Android

user-interface - MvxCommand 中间的 UI 操作

android - MvxCachingFragmentCompatActivity 消失了吗?

c# - MvxBind :Error: 10. 40 View 绑定(bind)时抛出异常

android - Mvvmcross 中的 RaisePropertyChanged 从一个类到另一个类

android - 在 MvvmCross 中使用 Rio 默认绑定(bind)