public RowViewModel(MVx.Observable.IBus bus, int row, CellViewModel[] cells) { _bus = bus; _cells = cells.ToDictionary(cell => cell.Column, cell => cell); Row = row; }
public Sheet(MVx.Observable.IBus bus) { _bus = bus; _cells = new Dictionary <Index, Cell>(); _expressionEvaluator = new Expression.Evaluator(Lookup); _expressionDependencies = new Expression.Dependencies(); _behaviours = new CompositeDisposable( ShouldRecalculateDependentCellsWhenTextChanges() ); }
public CellViewModel(MVx.Observable.IBus bus, int row, char column, IScheduler scheduler) { _bus = bus; _text = new MVx.Observable.Property <string>(nameof(Text), args => PropertyChanged?.Invoke(this, args)); _content = new MVx.Observable.Property <object>(nameof(Content), args => PropertyChanged?.Invoke(this, args)); _scheduler = scheduler; Row = row; Column = column; _subscription = new CompositeDisposable( ShouldUpdateContentWhenContentChangedReceived(), SholdPublishTextChangedWhenTextChanged() ); }