Siticone Shadow Button
The SiticoneShadowButton provides a highly polished button control featuring advanced visual depth, physics-based animations, and versatile styling options ranging from flat material designs to neon-glowing interactive elements.
Appearance & Styles
Core properties for configuring the fundamental look and color scheme of the button.
| Property | Type | Description & Usage Example |
|---|---|---|
ButtonStyle |
ButtonStyle |
btn.ButtonStyle = ButtonStyle.Raised;
Sets the visual mode:
|
BackgroundColor |
Color | btn.BackgroundColor = Color.FromArgb(0, 120, 212); The primary fill color of the button. |
HoverBackgroundColor |
Color | btn.HoverBackgroundColor = Color.SkyBlue; Background color on mouse hover. Defaults to a lighter version of BackgroundColor if not set. |
PressedBackgroundColor |
Color | btn.PressedBackgroundColor = Color.Navy; Background color while the button is being pressed. |
UseAccentColor |
bool |
btn.UseAccentColor = true;
If true, uses AccentColor for ripple and glow effects instead of their individual properties.
|
AccentColor |
Color | btn.AccentColor = Color.Orange; |
DisabledBackgroundColor |
Color | btn.DisabledBackgroundColor = Color.LightGray; |
DisabledForeColor |
Color | btn.DisabledForeColor = Color.Gray; |
DisabledBorderColor |
Color | btn.DisabledBorderColor = Color.Silver; |
Drop & Inner Shadows
Advanced shadow rendering capabilities for creating depth and "pressed" effects.
| Property | Type | Description & Usage Example |
|---|---|---|
EnableDropShadow |
bool | btn.EnableDropShadow = true; Toggles the main outer drop shadow. |
ShadowColor |
Color | btn.ShadowColor = Color.FromArgb(60, 0, 0, 0); |
ShadowBlur |
int | btn.ShadowBlur = 10; The radius of the shadow blur (softness). |
ShadowSpread |
int | btn.ShadowSpread = 2; Expands or contracts the shadow size. |
ShadowOffsetX |
int | btn.ShadowOffsetX = 0; Horizontal offset. |
ShadowOffsetY |
int | btn.ShadowOffsetY = 4; Vertical offset. |
EnableInnerShadow |
bool | btn.EnableInnerShadow = true; Adds a shadow inside the button borders, useful for depth or "pressed" looks. |
InnerShadowColor |
Color | btn.InnerShadowColor = Color.Black; |
InnerShadowSize |
int | btn.InnerShadowSize = 3; |
Shape & Borders
Control the geometry of the button, including individual corner radii and advanced border gradients.
| Property | Type | Description & Usage Example |
|---|---|---|
AutoRoundCorners |
bool | btn.AutoRoundCorners = true; Automatically calculates radii to create a pill shape based on height. |
TopLeftRadius |
int | btn.TopLeftRadius = 10; |
TopRightRadius |
int | btn.TopRightRadius = 10; |
BottomLeftRadius |
int | btn.BottomLeftRadius = 10; |
BottomRightRadius |
int | btn.BottomRightRadius = 10; |
BorderWidth |
int | btn.BorderWidth = 2; |
BorderColor |
Color | btn.BorderColor = Color.White; |
BorderGradient |
bool | btn.BorderGradient = true; Enables gradient coloring for the border stroke. |
BorderGradientColors |
Color[] | btn.BorderGradientColors = new[] { Color.Cyan, Color.Magenta }; Colors used for the border gradient. |
Interaction & Animation
Physics-based animations including springs, ripples, and diverse hover effects.
| Property | Type | Description & Usage Example |
|---|---|---|
EnableSpringEffect |
bool | btn.EnableSpringEffect = true; Enables a physical compression animation on click. |
SpringEffectMinScale |
float | btn.SpringEffectMinScale = 0.95f; Target scale (0.8-1.0) when fully pressed. |
SpringEffectSpeed |
int | btn.SpringEffectSpeed = 15; |
SpringBounceEffect |
bool | btn.SpringBounceEffect = true; Adds a bounce-back overshoot animation on release. |
SpringBounceAmount |
float | btn.SpringBounceAmount = 1.02f; Scale overshoot factor (e.g., 1.02 for 2% larger). |
EnableRippleEffectSbfx |
bool | btn.EnableRippleEffectSbfx = true; Toggles the material design ripple effect. |
RippleColor |
Color | btn.RippleColor = Color.White; |
RippleOpacity |
int | btn.RippleOpacity = 100; |
EnableHoverEffect |
bool | btn.EnableHoverEffect = true; Master toggle for hover animations. |
HoverStyle |
HoverEffectStyleSbfx |
btn.HoverStyle = HoverEffectStyleSbfx.Glow;
ColorChange: Standard fade. Brighten: Lightens background. Glow: Outer glow aura. Pulse: Heartbeat animation. Shine: Light gleam sweep. |
HoverAnimationSpeed |
int | btn.HoverAnimationSpeed = 10; |
HoverGlowColor |
Color |
btn.HoverGlowColor = Color.Cyan;
Used when HoverStyle is Glow.
|
HoverIntensity |
float | btn.HoverIntensity = 0.3f; Max opacity/strength of hover effects. |
HoverBrightenFactor |
float |
btn.HoverBrightenFactor = 0.2f;
Brightness increase when HoverStyle is Brighten.
|
Icon & Text Layout
| Property | Type | Description & Usage Example |
|---|---|---|
ButtonImage |
Image | btn.ButtonImage = Properties.Resources.icon; |
ImageSize |
int | btn.ImageSize = 24; |
ImagePadding |
int | btn.ImagePadding = 10; Space between the icon and text. |
IconPosition |
IconPosition | btn.IconPosition = IconPosition.Top; Position of the icon relative to the text (Left, Right, Top, Bottom). |
TextShadow |
bool | btn.TextShadow = true; Adds a subtle shadow behind the text. |
TextShadowColor |
Color | btn.TextShadowColor = Color.Black; |
TextShadowOffset |
int | btn.TextShadowOffset = 1; |
Padding |
Padding | btn.Padding = new Padding(5); Padding to prevent content clipping, especially with large shadows. |
TextRenderingMode |
TextRenderingHint | btn.TextRenderingMode = TextRenderingHint.AntiAlias; |
Enumerations
public enum HoverEffectStyleSbfx
{
ColorChange, // Standard color fade
Brighten, // Lightens the background
Glow, // Adds a glowing aura
Pulse, // Rhythmic pulsing size/glow
Shine // Diagonal light reflection
}
public enum ButtonStyle
{
Raised, // Standard button with shadow
Flat, // No shadow, background only
Outlined, // Border only, transparent background
Minimal // No shadow until hovered
}
Designer Support
The control includes a comprehensive Smart Tag menu in Visual Studio for rapid configuration.
- Copy/Paste Settings: Easily transfer button styles between instances.
- Reset Control: Revert to default factory settings.
- Theme Presets: One-click application of styles including: Green, Blue, Red, Dark, Light, Orange, Purple, Gradient, Neon, Minimal, and Outlined.
Usage Examples
Example 1: Neon Glow Button
var btn = new SiticoneShadowButton();
btn.Text = "NEON MODE";
btn.BackgroundColor = Color.FromArgb(20, 20, 20);
btn.ForeColor = Color.Cyan;
// Hover Glow
btn.EnableHoverEffect = true;
btn.HoverStyle = HoverEffectStyleSbfx.Glow;
btn.HoverGlowColor = Color.Cyan;
// Inner Shadow for "pressed" look
btn.EnableInnerShadow = true;
btn.InnerShadowColor = Color.FromArgb(100, 0, 255, 255);
btn.InnerShadowSize = 3;
// Outer Shadow
btn.ShadowColor = Color.FromArgb(50, 0, 255, 255);
btn.ShadowBlur = 15;
Example 2: Material Raised Button
var btn = new SiticoneShadowButton();
btn.Text = "SUBMIT";
btn.BackgroundColor = Color.DodgerBlue;
btn.ForeColor = Color.White;
btn.ButtonStyle = ButtonStyle.Raised;
// Material Ripple
btn.EnableRippleEffectSbfx = true;
btn.RippleColor = Color.White;
btn.RippleOpacity = 80;
// Tactile Feedback
btn.EnableSpringEffect = true;
btn.SpringEffectMinScale = 0.95f;
btn.SpringBounceEffect = true;
Example 3: Outlined Action Button
var btn = new SiticoneShadowButton();
btn.Text = "Cancel";
btn.ButtonStyle = ButtonStyle.Outlined;
btn.BorderColor = Color.Gray;
btn.BorderWidth = 2;
btn.ForeColor = Color.Gray;
// Subtle hover
btn.HoverBackgroundColor = Color.FromArgb(20, Color.Gray);
btn.HoverStyle = HoverEffectStyleSbfx.ColorChange;