agentsclimarketplace

Syncfusion winforms navigation drawer

Skill syncfusion/winforms-ui-components-skills/skills/syncfusion-winforms-navigation-drawer

Skills for Syncfusion WinForms controls. Enable AI-assisted development with comprehensive documentation, code examples, and best practices for 100+ UI controls including DataGrid, Charts, Scheduler, and more.

Install
npx -y skills add syncfusion/winforms-ui-components-skills --skill syncfusion-winforms-navigation-drawer

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Implement Syncfusion NavigationDrawer control in Windows Forms - a sliding panel menu that appears from screen edges. Use when creating drawer navigation, side menus, or hamburger menus with panel transitions. Covers DrawerMenuItem configuration, DrawerHeader setup, slide-out menus, and panel transitions (SlideOnTop, Push, Reveal) for modern sliding panel navigation.

SKILL.md

9.0 KB, ~1.9k tokens by cl100k_base, as published. Nobody here has run it

Windows Forms Navigation Drawer

The Syncfusion Windows Forms Navigation Drawer is a sliding panel menu that comes out from the edge of the window, allowing content to be displayed in a hidden panel. It can be shown by swiping from any of the four screen edges or opened programmatically on demand.

When to Use This Skill

Use this skill when you need to:

  • Implement sliding panel menus from screen edges (left, right, top, or bottom)
  • Create hamburger menu navigation with collapsible sidebar panels
  • Build hidden panels that slide in with smooth animations
  • Add drawer-based navigation to Windows Forms applications
  • Configure transition effects (SlideOnTop, Push, Reveal)
  • Customize drawer appearance with built-in Office 2016 themes
  • Handle drawer events (Opening, Closing, Opened, Closed)
  • Toggle drawer visibility programmatically or through user interaction
  • Position navigation panels at different screen edges with configurable animations

Component Overview

Key Features:

  • Four position options: Left, Right, Top, Bottom
  • Three transition types: SlideOnTop, Push, Reveal
  • Built-in themes: Default, Office2016Colorful, Office2016White, Office2016DarkGray, Office2016Black
  • Drawer events: Opening, Closing, Opened, Closed
  • Configurable animation duration
  • Toggle drawer method for programmatic control
  • Header and menu items with image support

Documentation and Navigation Guide

Getting Started

πŸ“„ Read: references/getting-started.md

Read this reference when you need to:

  • Install the NavigationDrawer control via NuGet or designer
  • Add the control to a Windows Forms project
  • Create a NavigationDrawer instance programmatically
  • Add header (DrawerHeader) and menu items (DrawerMenuItem)
  • Set up basic drawer dimensions (DrawerWidth, DrawerHeight)
  • Add images to menu items
  • Configure text and image positioning (TextAlign, TextImageRelation)
  • Understand basic sidebar placement

Drawer Features and Configuration

πŸ“„ Read: references/drawer-features.md

Read this reference when you need to:

  • Configure ContentView (main view content)
  • Understand DrawerView structure
  • Implement transition types (SlideOnTop, Push, Reveal)
  • Set drawer position (Left, Right, Top, Bottom)
  • Configure drawer dimensions and animation duration
  • Use ToggleDrawer method for programmatic control
  • Understand the differences between transition effects

Customization and Styling

πŸ“„ Read: references/customization.md

Read this reference when you need to:

  • Apply built-in themes (Default, Office2016Colorful, Office2016White, Office2016DarkGray, Office2016Black)
  • Customize drawer item colors (DefaultColor, BackColor, HoverColor)
  • Style menu items with custom colors
  • Apply consistent visual themes across the application

Events

πŸ“„ Read: references/events.md

Read this reference when you need to:

  • Handle Opening event (when expand transition begins)
  • Handle Closing event (when collapse transition begins)
  • Handle Opened event (when expand transition ends)
  • Handle Closed event (when collapse transition ends)
  • Respond to drawer state changes
  • Cancel drawer operations
  • Implement custom logic during transitions

Advanced Usage

πŸ“„ Read: references/advanced-usage.md

Read this reference when you need to:

  • Configure ContentViewContainer with complex controls
  • Integrate RichTextBox or other controls in ContentView
  • Manage dynamic item addition/removal
  • Implement complex item hierarchies
  • Optimize performance for large menus
  • Follow best practices for drawer implementation

Quick Start

Basic Navigation Drawer

using Syncfusion.Windows.Forms.Tools;

// Create NavigationDrawer instance
NavigationDrawer navigationDrawer1 = new NavigationDrawer();
this.Controls.Add(navigationDrawer1);

// Set drawer dimensions
navigationDrawer1.DrawerWidth = this.Width / 4;
navigationDrawer1.DrawerHeight = this.Height;

// Set position and transition
navigationDrawer1.Position = SlidePosition.Left;
navigationDrawer1.Transition = Transition.SlideOnTop;

// Add header
DrawerHeader drawerHeader1 = new DrawerHeader();
drawerHeader1.Text = "Menu";
navigationDrawer1.Items.Add(drawerHeader1);

// Add menu items
DrawerMenuItem menuItem1 = new DrawerMenuItem();
menuItem1.Text = "Home";
menuItem1.Image = Image.FromFile(@"home.png");

DrawerMenuItem menuItem2 = new DrawerMenuItem();
menuItem2.Text = "Settings";
menuItem2.Image = Image.FromFile(@"settings.png");

navigationDrawer1.Items.Add(menuItem1);
navigationDrawer1.Items.Add(menuItem2);

// Add content to ContentView
RichTextBox richTextBox = new RichTextBox();
richTextBox.Text = "Main content area";
navigationDrawer1.ContentViewContainer.Controls.Add(richTextBox);

Common Patterns

Pattern 1: Left Slide Panel with Push Transition

// Create drawer that pushes content when opened
NavigationDrawer drawer = new NavigationDrawer();
drawer.Position = SlidePosition.Left;
drawer.Transition = Transition.Push;
drawer.DrawerWidth = 250;
drawer.DrawerHeight = this.Height;
drawer.AnimationDuration = 150; // milliseconds

this.Controls.Add(drawer);

Pattern 2: Toggle Drawer with Button Click

// Toggle drawer visibility on button click
private void hamburgerButton_Click(object sender, EventArgs e)
{
    navigationDrawer1.ToggleDrawer();
}

Pattern 3: Themed Drawer with Custom Colors

// Apply Office 2016 theme with custom item colors
navigationDrawer1.Style = NavigationDrawerStyle.Office2016Colorful;

// Customize menu item colors
drawerMenuItem1.DefaultColor = System.Drawing.Color.LightBlue;
drawerMenuItem1.HoverColor = System.Drawing.Color.SkyBlue;
drawerMenuItem1.BackColor = System.Drawing.Color.LightBlue;

Pattern 4: Handle Drawer Events

// Subscribe to drawer events
navigationDrawer1.Opening += NavigationDrawer1_Opening;
navigationDrawer1.Opened += NavigationDrawer1_Opened;
navigationDrawer1.Closing += NavigationDrawer1_Closing;
navigationDrawer1.Closed += NavigationDrawer1_Closed;

private void NavigationDrawer1_Opening(object sender, OpeningEventArgs e)
{
    // Logic when drawer starts opening
    Console.WriteLine("Drawer is opening...");
}

private void NavigationDrawer1_Opened(object sender, EventArgs e)
{
    // Logic when drawer is fully open
    Console.WriteLine("Drawer opened");
}

private void NavigationDrawer1_Closing(object sender, CancelEventArgs e)
{
    // Can cancel closing if needed
    // e.Cancel = true;
    Console.WriteLine("Drawer is closing...");
}

private void NavigationDrawer1_Closed(object sender, EventArgs e)
{
    // Logic when drawer is fully closed
    Console.WriteLine("Drawer closed");
}

Pattern 5: Right-Side Drawer with Reveal Transition

// Create drawer that reveals from behind content
NavigationDrawer drawer = new NavigationDrawer();
drawer.Position = SlidePosition.Right;
drawer.Transition = Transition.Reveal;
drawer.DrawerWidth = 300;
drawer.AnimationDuration = 200;

// Add items
DrawerHeader header = new DrawerHeader { Text = "Options" };
drawer.Items.Add(header);

string[] menuItems = { "Profile", "Settings", "Notifications", "Help" };
foreach (string item in menuItems)
{
    DrawerMenuItem menuItem = new DrawerMenuItem { Text = item };
    drawer.Items.Add(menuItem);
}

this.Controls.Add(drawer);

Key Properties

PropertyTypeDescription
PositionSlidePositionDrawer sliding position: Left, Right, Top, Bottom
TransitionTransitionAnimation type: SlideOnTop, Push, Reveal
DrawerWidthintWidth of the drawer panel
DrawerHeightintHeight of the drawer panel
AnimationDurationintDuration in milliseconds for drawer animation
StyleNavigationDrawerStyleVisual theme: Default, Office2016Colorful, etc.
ItemsCollectionCollection of DrawerHeader and DrawerMenuItem objects
ContentViewContainerControlContainer for main content area controls

Key Methods

MethodDescription
ToggleDrawer()Toggles drawer visibility (open ↔ closed)

Key Events

EventDescription
OpeningOccurs when expand transition begins
OpenedOccurs when expand transition ends
ClosingOccurs when collapse transition begins (cancelable)
ClosedOccurs when collapse transition ends

What ships with it: 5 files

27.1 KB alongside SKILL.md

Keep looking

Skills are one crate of 326,984. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.