Siticone Panel
The SiticonePanel is a modern container control that extends the standard Windows Forms Panel.
It offers advanced styling capabilities such as gradients, rounded corners, texture overlays, ripple effects, and integration with Windows 11 Acrylic/Mica materials.
Appearance & Styling
Customize the panel's background, borders, and shape.
| Property | Type | Description & Usage Example |
|---|---|---|
FillColor |
Color | panel.FillColor = Color.WhiteSmoke; The primary background color of the panel. |
UseGradientBackground |
bool |
panel.UseGradientBackground = true;
Enables a gradient fill based on BackgroundGradientStart and BackgroundGradientEnd.
|
UseMultiGradient |
bool |
panel.UseMultiGradient = true;
Enables a multi-stop gradient defined by GradientColors and GradientPositions.
|
CornerRadiusTopLeft |
float | panel.CornerRadiusTopLeft = 15f; Sets the rounding radius for the top-left corner. |
ShowBorder |
bool | panel.ShowBorder = true; Toggles the visibility of the panel's border. |
BorderThickness |
float | panel.BorderThickness = 2.5f; Sets the width of the border line. |
Visual Effects
Add depth and interactivity with advanced rendering effects.
| Property | Type | Description & Usage Example |
|---|---|---|
EnableRippleEffect |
bool | panel.EnableRippleEffect = true; Adds a Material Design-style ripple animation on click. |
RippleColor |
Color | panel.RippleColor = Color.FromArgb(50, 0, 0, 0); The color of the ripple wave. |
EnableMicaEffect |
bool | panel.EnableMicaEffect = true; Enables the Windows 11 Mica backdrop effect (translucent desktop wallpaper tint). Requires Windows 11. |
EnableAcrylicEffect |
bool | panel.EnableAcrylicEffect = true; Enables the Acrylic blur effect (frosted glass). |
UsePatternTexture |
bool | panel.UsePatternTexture = true; Overlays a hatch pattern texture on the background. |
Events
Respond to user interaction and system changes.
// 1. RippleEffectStarted Event
// Fires when a ripple animation begins.
panel.RippleEffectStarted += (s, e) =>
{
Console.WriteLine($"Ripple at: {e.Origin}");
};
// 2. SystemThemeChanged Event
// Fires when the OS theme changes (Light/Dark mode).
panel.SystemThemeChanged += (s, e) =>
{
if (e.NewTheme == SystemTheme.Dark)
panel.FillColor = Color.Black;
else
panel.FillColor = Color.White;
};
// 3. KeyboardFocusReceived Event
// Fires when the panel gains or loses keyboard focus.
panel.KeyboardFocusReceived += (s, e) =>
{
panel.BorderColor = e.HasFocus ? Color.Blue : Color.Gray;
};
Detailed Usage Examples
Example 1: Glassmorphism Card
Creating a translucent, frosted-glass card for a modern UI dashboard.
private void CreateGlassCard()
{
siticonePanel1.EnableAcrylicEffect = true;
siticonePanel1.AcrylicTintColor = Color.FromArgb(100, 255, 255, 255);
siticonePanel1.SetCornerRadius(15);
siticonePanel1.ShowBorder = true;
siticonePanel1.BorderColor = Color.FromArgb(50, 255, 255, 255);
siticonePanel1.BorderThickness = 1.5f;
siticonePanel1.EnableRippleEffect = true;
siticonePanel1.RippleColor = Color.FromArgb(30, 255, 255, 255);
}
Example 2: Gradient Header Bar
A stylish top navigation bar with a multi-stop gradient.
private void SetupHeaderBar()
{
siticonePanel1.UseMultiGradient = true;
siticonePanel1.GradientColors = new[] { Color.Indigo, Color.Purple, Color.DeepPink };
siticonePanel1.GradientPositions = new[] { 0f, 0.6f, 1f };
// Rounded bottom corners only
siticonePanel1.CornerRadiusTopLeft = 0;
siticonePanel1.CornerRadiusTopRight = 0;
siticonePanel1.CornerRadiusBottomLeft = 20;
siticonePanel1.CornerRadiusBottomRight = 20;
siticonePanel1.ShowBorder = false;
}
Example 3: Patterned Background
Using texture patterns for a retro or technical look.
private void ApplyTechLook()
{
siticonePanel1.UsePatternTexture = true;
siticonePanel1.PatternStyle = HatchStyle.Grid;
siticonePanel1.FillColor = Color.FromArgb(30, 30, 30); // Dark background
siticonePanel1.ShowBorder = true;
siticonePanel1.BorderColor = Color.LimeGreen;
siticonePanel1.BorderThickness = 2f;
siticonePanel1.UseBorderGradient = true;
siticonePanel1.BorderGradientStartColor = Color.LimeGreen;
siticonePanel1.BorderGradientEndColor = Color.DarkGreen;
}
Example 4: Theme-Aware Panel
Automatically adapting to the system's light/dark mode.
private void InitializeThemeAwareness()
{
siticonePanel1.TrackSystemTheme = true;
siticonePanel1.SystemThemeChanged += OnThemeChanged;
}
private void OnThemeChanged(object sender, SiticonePanel.SystemThemeChangedEventArgs e)
{
if (e.NewTheme == SiticonePanel.SystemTheme.Dark)
{
siticonePanel1.FillColor = Color.FromArgb(32, 32, 32);
siticonePanel1.BorderColor = Color.Gray;
}
else
{
siticonePanel1.FillColor = Color.White;
siticonePanel1.BorderColor = Color.LightGray;
}
}