| name | syncfusion-winforms-excel-like-tabbar-splitter |
| description | Guide for implementing Syncfusion TabBarSplitterControl in Windows Forms applications for creating workbook-like tabbed interfaces. Use this skill when implementing Excel-like tabs, tabbed pages with splitters, or multiple sheet interfaces in Windows Forms. Covers NuGet installation, TabBarPage management, programmatic creation, and child control integration. |
| metadata | {"author":"Syncfusion Inc","version":"34.1.29","platform":"Windows Forms"} |
Implementing TabBarSplitterControl
Guide for implementing Syncfusion's TabBarSplitterControl in Windows Forms applications. This control creates tabbed pages with dynamic splitters, providing a workbook-like appearance ideal for GridControl integration and multi-sheet interfaces.
When to Use This Skill
Use TabBarSplitterControl when you need to:
- Create tabbed interfaces with dynamic splitters in Windows Forms
- Build workbook-like UI layouts with multiple pages
- Integrate GridControl with tabbed pages
- Implement multi-sheet data views
- Create Excel-like tabbed interfaces
- Organize multiple data grids in separate pages
- Support formula cells and cross-reference sheets
- Build applications requiring page-based navigation with controls
Component Overview
TabBarSplitterControl enables creation of tabbed pages with dynamic splitters. When used with GridControl, it provides a workbook-like appearance where each tab can contain separate grid instances.
Key Features:
- Multiple TabBarPage support
- Dynamic splitter functionality
- GridControl integration
- Workbook-like appearance
- Designer and programmatic creation
- Controls collection per page
- Page management and organization
Assembly: Syncfusion.Shared.Base
Namespace: Syncfusion.Windows.Forms
Key Classes:
TabBarSplitterControl - Main container control
TabBarPage - Individual page within the control
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
- NuGet package installation (Syncfusion.Shared.Base for TabBarSplitterControl)
- Child control NuGet packages (reference child control's skill file in skills folder)
- Assembly and namespace references
- Basic control overview and purpose
- When to use TabBarSplitterControl
- Child control integration basics (GridControl, SfDataGrid, or any Syncfusion/framework control)
- Designer availability note
Programmatic Implementation
📄 Read: references/programmatic-implementation.md
- Creating TabBarSplitterControl in code
- Initializing and configuring TabBarPages
- Adding controls to pages programmatically
- Setting page properties (Text, Controls)
- Multiple page scenarios
- C# and VB.NET implementation examples
- GridControl integration patterns
- Common configuration patterns
Quick Start
Installation
TabBarSplitterControl NuGet Package:
Install the Syncfusion.Shared.Base NuGet package (latest version):
Install-Package Syncfusion.Shared.Base -Version *
Or via .NET CLI:
dotnet add package Syncfusion.Shared.Base --version *
Note: Using * ensures the latest version is installed during restore.
Child Control NuGet Packages:
When using TabBarSplitterControl with child controls (GridControl, SfDataGrid, or any Syncfusion/framework control), install the required NuGet packages for those child controls. Reference the child control's references/getting-started.md file in the skills folder for specific NuGet package installation instructions.
Examples:
- For GridControl: Check
syncfusion-winforms-grid-control/references/getting-started.md for NuGet installation
- For SfDataGrid: Check
syncfusion-winforms-datagrid/references/getting-started.md for NuGet installation
- For any other control: Check
syncfusion-winforms-{control-name}/references/getting-started.md for NuGet installation
Basic Implementation (C#)
using Syncfusion.Windows.Forms;
using Syncfusion.Windows.Forms.Grid;
TabBarSplitterControl tabBarSplitter = new TabBarSplitterControl();
TabBarPage page1 = new TabBarPage();
page1.Text = "Sheet1";
TabBarPage page2 = new TabBarPage();
page2.Text = "Sheet2";
page1.Controls.Add(new GridControl());
page2.Controls.Add(new GridControl());
tabBarSplitter.Controls.Add(page1);
tabBarSplitter.Controls.Add(page2);
this.Controls.Add(tabBarSplitter);
Basic Implementation (VB.NET)
Imports Syncfusion.Windows.Forms
Imports Syncfusion.Windows.Forms.Grid
Dim page1 As New TabBarPage()
page1.Text = "Sheet1"
Dim page2 As New TabBarPage()
page2.Text = "Sheet2"
page1.Controls.Add(New GridControl())
page2.Controls.Add(New GridControl())
tabBarSplitterControl1.Controls.Add(page1)
tabBarSplitterControl1.Controls.Add(page2)
Common Patterns
Pattern 1: Creating Multiple Named Pages
TabBarSplitterControl tabBarSplitter = new TabBarSplitterControl();
TabBarPage income = new TabBarPage { Text = "Income" };
TabBarPage expenses = new TabBarPage { Text = "Expenses" };
TabBarPage summary = new TabBarPage { Text = "Summary" };
income.Controls.Add(new GridControl());
expenses.Controls.Add(new GridControl());
summary.Controls.Add(new GridControl());
tabBarSplitter.Controls.Add(income);
tabBarSplitter.Controls.Add(expenses);
tabBarSplitter.Controls.Add(summary);
this.Controls.Add(tabBarSplitter);
Pattern 2: Using Existing GridControl Instances
GridControl gridIncome = new GridControl();
GridControl gridExpenses = new GridControl();
TabBarPage incomePage = new TabBarPage { Text = "Income" };
TabBarPage expensesPage = new TabBarPage { Text = "Expenses" };
incomePage.Controls.Add(gridIncome);
expensesPage.Controls.Add(gridExpenses);
tabBarSplitter.Controls.Add(incomePage);
tabBarSplitter.Controls.Add(expensesPage);
Pattern 3: VB.NET Implementation
Private IncomePage As New Syncfusion.Windows.Forms.TabBarPage()
Private ExpensesPage As New Syncfusion.Windows.Forms.TabBarPage()
IncomePage.Text = "Income"
IncomePage.Controls.Add(Me.gridControl1)
ExpensesPage.Text = "Expenses"
ExpensesPage.Controls.Add(Me.gridControl2)
tabBarSplitterControl1.Controls.Add(Me.IncomePage)
tabBarSplitterControl1.Controls.Add(Me.ExpensesPage)
Key Properties and Classes
TabBarSplitterControl
Purpose: Main container control that hosts TabBarPages
Key Members:
Controls - Collection of TabBarPage objects
- Standard WinForms control properties (Location, Size, Dock, etc.)
TabBarPage
Purpose: Individual page within TabBarSplitterControl
Key Properties:
Text - Page tab label
Controls - Collection of controls within the page (typically GridControl)
- Standard WinForms control properties
Common Use Cases
1. Financial Data Workbook
Create separate sheets for Income, Expenses, and Summary with GridControls or SfDataGrids for each. Reference child control skill files for specific NuGet requirements.
2. Multi-Sheet Reports
Organize different report views in separate tabs with cross-references between sheets. Use appropriate child controls based on customer requirements.
3. Data Analysis Interface
Display multiple data grids with formulas that reference data across different pages. Check GridControl or SfDataGrid skill files for implementation details.
4. Spreadsheet-Like Applications
Build Excel-like interfaces where each tab contains a separate data grid or any Syncfusion/framework control.
5. Dashboard with Multiple Views
Create tabbed interface where each page shows different data visualization, grid view, or custom controls. Reference respective skill files for child control implementation.
Designer Integration Note
TabBarSplitterControl can also be added via Visual Studio Designer:
- Drag and drop from toolbox
- Use TabBarPageCollectionEditor for page management
- Edit option available in designer mode
Note: Claude cannot perform manual designer operations. For programmatic implementation, use the patterns and examples provided in this skill.
Related Documentation
For additional properties and methods of TabBarSplitterControl, refer to the Syncfusion documentation for the Splitter overview.
Next Steps
- For TabBarSplitterControl installation and setup: Read
references/getting-started.md
- For TabBarSplitterControl code implementation: Read
references/programmatic-implementation.md
- For child control integration (GridControl, SfDataGrid, or any control):
- Reference the child control's
references/getting-started.md file in the skills folder for NuGet package installation
- Check the child control's reference files for proper configuration
- Ensure child control is properly configured before adding to TabBarPages