LayoutDefinition.SizeMode Property
Gets or sets the value that defines how to change pane sizes when an end user resizes the chart.
Namespace: DevExpress.XtraCharts
Assembly: DevExpress.XtraCharts.v24.2.dll
NuGet Package: DevExpress.Charts
Declaration
[XtraChartsLocalizableCategory(XtraChartsCategory.Appearance)]
public PaneSizeMode SizeMode { get; set; }
Property Value
Type | Description |
---|---|
PaneSizeMode | The value that defines how to resize panes. |
Available values:
Name | Description |
---|---|
UseWeight | A pane’s size is specified by the LayoutDefinition.Weight property and is proportionally recalculated when a chart is resized. |
UseSizeInPixels | A pane’s size is specified by the LayoutDefinition.SizeInPixels property (measured in pixels) and is fixed when a chart is resized. |
Example
This example shows how to arrange chart panes using the grid layout.
Populate the GridPaneLayout.ColumnDefinitions and GridPaneLayout.RowDefinitions collections with LayoutDefinition objects.
Use the LayoutDefinition.Weight or LayoutDefinition.SizeInPixels properties to specify the layout item’s size. Note that you should specify the LayoutDefinition.SizeMode
property to define which size property is used.
Use the XYDiagramPaneBase.LayoutOptions property to access the pane layout options. Define the GridLayoutOptions.Column, GridLayoutOptions.ColumnSpan, GridLayoutOptions.Row and GridLayoutOptions.RowSpan properties to specify a pane position.
XYDiagram diagram = chart.Diagram as XYDiagram;
diagram.PaneLayout.AutoLayoutMode = PaneAutoLayoutMode.Grid;
// You can use the AddRange method to add several layout definitions to the collection.
diagram.PaneLayout.ColumnDefinitions.Add(new LayoutDefinition { SizeMode = PaneSizeMode.UseWeight, Weight = 1 });
diagram.PaneLayout.ColumnDefinitions.Add(new LayoutDefinition { SizeMode = PaneSizeMode.UseSizeInPixels, SizeInPixels = 200 });
diagram.PaneLayout.RowDefinitions.Add(new LayoutDefinition());
diagram.PaneLayout.RowDefinitions.Add(new LayoutDefinition());
diagram.DefaultPane.LayoutOptions.Column = 0;
diagram.DefaultPane.LayoutOptions.Row = 0;
diagram.Panes[0].LayoutOptions.Column = 1;
diagram.Panes[0].LayoutOptions.Row = 0;
diagram.Panes[0].LayoutOptions.RowSpan = 2;
diagram.Panes[0].LayoutOptions.ColumnSpan = 1;
diagram.Panes[1].LayoutOptions.Column = 0;
diagram.Panes[1].LayoutOptions.Row = 1;