private IWritableReactiveTable SetupAccountTable(IWritableReactiveTable accounts, List <IReactiveColumn> baseAccountColumns, Dispatcher dispatcher) { baseAccountColumns.ForEach(col => accounts.AddColumn(col)); // Create the wire table var accountsWire = new ReactiveBatchedPassThroughTable(accounts, new WpfThreadMarshaller(dispatcher), _synchroniseTablesDelay); // var accountsWire = new ReactiveTable(accounts); // new BatchedTableSynchroniser(accountsWire, accounts, new WpfThreadMarshaller(dispatcher), _synchroniseTablesDelay); return(accountsWire); }
private IWritableReactiveTable SetupPersonTable(IWritableReactiveTable people, List <IReactiveColumn> baseColumns, Dispatcher dispatcher) { // Wire up the two tables before the dynamic columns var peopleWire = new ReactiveBatchedPassThroughTable(people, new WpfThreadMarshaller(dispatcher), _synchroniseTablesDelay); // var PeopleWire = new ReactiveTable(People); // new BatchedTableSynchroniser(PeopleWire, People, new WpfThreadMarshaller(dispatcher), _synchroniseTablesDelay); people.AddColumn(new ReactiveCalculatedColumn2 <string, int, string>( PersonColumns.IdNameColumn, (IReactiveColumn <int>)baseColumns[0], (IReactiveColumn <string>)baseColumns[1], (idVal, nameVal) => idVal + nameVal)); return(peopleWire); }