WPF GridSplitter control is a divider that helps to split the available space into rows and columns in a grid. It supports to splits the controls horizontally or vertically with a splitter. In addition to that, it allows users to resize the grid’s column width and row height on demand. It also supports preview for resizing splitter controls as well as expanding and collapsing the view.
Allow users to split the controls in both horizontal and vertical orientation.
The WPF GridSplitter control allows users to resize the controls to occupy all the available space in the view. Supports restrict resizing to minimum and maximum sizes for views. It also supports previews for resizing controls while resizing splitter.
Provides support to expand and collapse views through expand and collapse options in UI.
Provides support for multiple views in WPF GridSplitter to arrange controls with different orientation. It makes splitting the screen easier and allows users to collapse views to get more readability for specific views.
Easily get started with the WPF GridSplitter using a few simple lines of XAML and C# code example as demonstrated below. Also explore our WPF GridSplitter Example that shows you how to render and configure the GridSplitter in WPF.
xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="5" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="Left Panel" />
<syncfusion:SfGridSplitter Grid.Column="1" ResizeBehavior="PreviousAndNext" ResizeDirection="Auto" Width="5" />
<TextBlock Grid.Column="2" Text="Right Panel" />
</Grid>
using Syncfusion.Windows.Controls.Input;
namespace WpfApp1
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
var col1 = new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) };
var col2 = new ColumnDefinition() { Width = new GridLength(5, GridUnitType.Pixel) };
var col3 = new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) };
grid.ColumnDefinitions.Add(col1);
grid.ColumnDefinitions.Add(col2);
grid.ColumnDefinitions.Add(col3);
var leftTextBlock = new TextBlock() { Text = "Left Panel" };
Grid.SetColumn(leftTextBlock, 0);
grid.Children.Add(leftTextBlock);
var splitter = new SfGridSplitter() { ResizeBehavior = GridResizeBehavior.PreviousAndNext, ResizeDirection = GridResizeDirection.Auto, Width = 5 };
Grid.SetColumn(splitter, 1);
grid.Children.Add(splitter);
var rightTextBlock = new TextBlock() { Text = "Right Panel" };
Grid.SetColumn(rightTextBlock, 2);
grid.Children.Add(rightTextBlock);
}
}
}
No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue, 5 or fewer developers, and 10 or fewer total employees.
A good place to start would be our comprehensive getting started documentation.
Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion is proud to hold the following industry awards.