Organize Layout

Arrange content using panels, columns, grids, and alignment

When you need to structure console output, use layout widgets.

Wrap in a Panel

To emphasize content with a border, use Panel.

var panel = new Panel("Important message")
    .Header("[yellow]Notice[/]")
    .BorderColor(Color.Yellow);
  
AnsiConsole.Write(panel);

Arrange Side by Side

To place content horizontally, use Columns.

var left = new Panel("Left content").Header("Panel 1");
var right = new Panel("Right content").Header("Panel 2");
  
AnsiConsole.Write(new Columns(left, right));

Create a Grid

To arrange content in rows and columns, use Grid.

var grid = new Grid();
grid.AddColumn();
grid.AddColumn();
  
grid.AddRow("Name", "Alice");
grid.AddRow("Role", "Developer");
grid.AddRow("Team", "Platform");
  
AnsiConsole.Write(grid);

Center Content

To center content horizontally, use Align.Center().

var panel = new Panel("Centered content")
    .Border(BoxBorder.Rounded);
  
AnsiConsole.Write(Align.Center(panel));

See Also