public void AddGnosisCaptionLabel(GnosisCaptionLabel captionLabel, int column, int row, int colSpan, int rowSpan) { //each grid cell contains a stack panel StackPanel panel; if (matrix[column, row] == null) { panel = new StackPanel(); panel.Orientation = Orientation.Horizontal; matrix[column, row] = panel; Grid.SetColumn(panel, column); Grid.SetRow(panel, row); Grid.SetColumnSpan(panel, colSpan); Grid.SetRowSpan(panel, rowSpan); contentGrid.Children.Add(panel); } else { panel = matrix[column, row]; } if (captionLabel.RelativePosition == GnosisController.CaptionPosition.LEFT || captionLabel.RelativePosition == GnosisController.CaptionPosition.RIGHT) { captionLabel.VerticalAlignment = VerticalAlignment.Center; } panel.Children.Add(captionLabel); }
public void LoadCell(IGnosisCaptionLabelImplementation header, int col, int row, int colSpan, int rowSpan) { GnosisCaptionLabel captionLabel = (GnosisCaptionLabel)header; if (captionLabel.RelativePosition == GnosisController.CaptionPosition.LEFT) { captionLabel.VerticalAlignment = VerticalAlignment.Top; captionLabel.HorizontalAlignment = HorizontalAlignment.Right; } else if (captionLabel.RelativePosition == GnosisController.CaptionPosition.RIGHT) { captionLabel.VerticalAlignment = VerticalAlignment.Top; captionLabel.HorizontalAlignment = HorizontalAlignment.Left; } Grid.SetColumn(captionLabel, col); Grid.SetColumnSpan(captionLabel, colSpan); Grid.SetRow(captionLabel, row); Grid.SetRowSpan(captionLabel, rowSpan); gridContent.Children.Add(captionLabel); }