public DefaultRailsIndexViewFactory(
     IRailsEditViewFactory railsEditViewFactory      = null,
     IRailsEditViewModelFactory editViewModelFactory = null,
     IGridService gridService = null)
 {
     this.editViewModelFactory = editViewModelFactory.Resolve();
     this.railsEditViewFactory = railsEditViewFactory.Resolve(this);
     this.gridService          = gridService.Resolve();
 }
 public static IRailsIndexViewFactory Resolve(
     this IRailsIndexViewFactory factory,
     IRailsEditViewFactory editViewFactory = null,
     IRailsEditViewModelFactory railsEditViewModelFactory = null,
     IGridService gridService = null)
 {
     return(factory
            ?? new DefaultRailsIndexViewFactory(editViewFactory, railsEditViewModelFactory, gridService));
 }
示例#3
0
        public MainWindow(
            IRailsEditViewFactory railsEditViewFactory)
        {
            railsEditViewFactory = railsEditViewFactory.Resolve();

            InitializeComponent();

            var result = Try.To(() => SaveFilePath.DeserializeFromJson <BookShelf>());

            if (result.Ok)
            {
                this.bookShelf = result.Value;
            }
            else
            {
                CreateSampleData();
            }

            this.BookShelfGrid.Children.Add(railsEditViewFactory.CreateEditView(bookShelf, typeof(BookShelf)));
        }
示例#4
0
 public static IRailsEditViewFactory Resolve(this IRailsEditViewFactory factory, IRailsIndexViewFactory indexFactory = null)
 {
     return(factory ?? new DefaultRailsEditViewFactory(indexFactory));
 }
示例#5
0
 public DefaultRailsIndexViewFactory(IRailsEditViewFactory railsEditViewFactory)
 {
     this.railsEditViewFactory = railsEditViewFactory.Resolve(this);
 }