public GridWindow() { InitializeComponent(); _rowPageManager = new PageManager<string>( new HeaderProvider(RowCount, true), 64, TimeSpan.FromMinutes(1.0), 4); _columnPageManager = new PageManager<string>( new HeaderProvider(ColumnCount, true), 64, TimeSpan.FromMinutes(1.0), 4); _pageManager = new Page2DManager<GridItem>( new ItemsProvider(RowCount, ColumnCount), 64, TimeSpan.FromMinutes(1.0), 4); this.VGrid.ItemsSource = _dataSource = new DynamicGridDataSource(_pageManager); this.VGrid.RowHeaderSource = new DelegateList<PageItem<string>>(0, (i) => _rowPageManager.GetItem(i), _rowPageManager.Count); this.VGrid.ColumnHeaderSource = new DelegateList<PageItem<string>>(0, (i) => _columnPageManager.GetItem(i), _columnPageManager.Count); }