コード例 #1
0
        /// <summary>
        /// Create a new table joining two existing tables
        /// </summary>
        /// <param name="leftTable"></param>
        /// <param name="rightTable"></param>
        /// <param name="joiner"></param>
        public JoinedTable(IReactiveTable leftTable, IReactiveTable rightTable, IReactiveTableJoiner joiner)
        {
            _leftTable  = leftTable;
            _rightTable = rightTable;
            _joiner     = joiner;

            _joiner.SetObserver(_calculatedColumnSubject);
            _changeNotifier = new Lazy <PropertyChangedNotifier>(() => new PropertyChangedNotifier(this));
            AddBaseTableColumns(leftTable);
            AddBaseTableColumns(rightTable);
            // TODO: need to process all existing values in the tables
        }
コード例 #2
0
 public IReactiveTable Join(IReactiveTable otherTable, IReactiveTableJoiner joiner)
 {
     throw new NotImplementedException();
 }
コード例 #3
0
 public virtual IReactiveTable Join(IReactiveTable otherTable, IReactiveTableJoiner joiner)
 {
     return(new JoinedTable(this, otherTable, joiner));
 }
コード例 #4
0
 public void SetJoiner(IReactiveTableJoiner joiner)
 {
     _joiner = joiner;
 }