コード例 #1
0
        public void LayoutSubviews_WithoutGridLines_PositionsViewHorizontallyBasedOnColumnWidth()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };
            var cell = new UIView();
            grid[new Point(1, 0)] = cell;

            grid.LayoutSubviews();

            Assert.AreEqual(50, cell.Frame.X);
        }
コード例 #2
0
        public void LayoutSubviews_WithoutGridLines_PositionsViewVerticallyBasedOnRowHeight()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };
            var cell = new UIView();
            grid[new Point(0, 1)] = cell;

            grid.LayoutSubviews();

            Assert.AreEqual(60, cell.Frame.Y);
        }
コード例 #3
0
        public void LayoutSubviews_ResizesViewToRowHeight()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };
            var cell = new UIView(new RectangleF(0, 0, 150, 100));
            grid[new Point(0, 0)] = cell;

            grid.LayoutSubviews();

            Assert.AreEqual(60, cell.Frame.Height);
        }
コード例 #4
0
        public void LayoutSubviews_ResizesSubviewToColumnWidth()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };
            var cell = new UIView(new RectangleF(0, 0, 100, 150));
            grid[new Point(0, 0)] = cell;

            grid.LayoutSubviews();

            Assert.AreEqual(50, cell.Frame.Width);
        }
コード例 #5
0
        public void LayoutSubviews_WithGridLines_PositionsViewVerticallyBasedOnRowHeightAndGridLines()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };
            grid.HorizontalGridlines.Thickness = 2;
            var cell = new UIView();
            grid[new Point(0, 1)] = cell;

            grid.LayoutSubviews();

            Assert.AreEqual(62, cell.Frame.Y);
        }
コード例 #6
0
        void Initialize()
        {
            BackgroundColor = UIColor.Clear;

            frozenHeadersScrollView = new FrozenHeadersScrollView(Bounds);
            HeaderRowHeight = DefaultHeaderRowHeight;
            HeaderColumnWidth = DefaultHeaderColumnWidth;

            gridHeaderRowView = new GridHeaderRowView();
            gridHeaderRowView.Gridlines.Thickness = 1;
            frozenHeadersScrollView.HeaderRow.AddSubview(gridHeaderRowView);

            gridHeaderColumnView = new GridHeaderColumnView();
            gridHeaderColumnView.Gridlines.Thickness = 1;
            frozenHeadersScrollView.HeaderColumn.AddSubview(gridHeaderColumnView);

            gridContentView = new GridContentView();
            gridContentView.VerticalGridlines.Thickness = 1;
            gridContentView.HorizontalGridlines.Thickness = 1;
            frozenHeadersScrollView.ContentView.AddSubview(gridContentView);

            AddSubview(frozenHeadersScrollView);
        }
コード例 #7
0
        public void SetCellSize_AdjustsFrameSize()
        {
            var grid = new GridContentView { GridSize = new Size(4, 3) };

            grid.CellSize = new SizeF(50, 80);

            Assert.AreEqual(200, grid.Frame.Width);
            Assert.AreEqual(240, grid.Frame.Height);
        }
コード例 #8
0
        public void SetGridSize_WhenAdjustingFrameWidth_AccountsForInnerGridLines()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };
            grid.VerticalGridlines.Thickness = 2;

            grid.GridSize = new Size(3, 2);

            Assert.AreEqual(154, grid.Frame.Size.Width);
        }
コード例 #9
0
        public void SetGridSize_WhenAdjustingFrameHeight_AccountsForInnerGridLines()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };
            grid.HorizontalGridlines.Thickness = 2;

            grid.GridSize = new Size(2, 3);

            Assert.AreEqual(184, grid.Frame.Size.Height);
        }
コード例 #10
0
        public void SetGridSize_AdjustsTheFrameWidthBasedOnColumnWidth()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };

            grid.GridSize = new Size(3, 2);

            Assert.AreEqual(150, grid.Frame.Size.Width);
        }
コード例 #11
0
        public void SetGridSize_AdjustsTheFrameHeightBasedOnRowHeight()
        {
            var grid = new GridContentView() { CellSize = new SizeF(50, 60) };

            grid.GridSize = new Size(2, 3);

            Assert.AreEqual(180, grid.Frame.Size.Height);
        }