Siticone Pips Pager (Advanced)
The SiticonePipsPagerAdvanced is a highly enhanced version of the standard Pips Pager, offering modern, fluid animations and extended functionality.
Key features include an elongated selection indicator that smoothly morphs between pips, a built-in Progress Mode for loading scenarios,
and continuous ripple effects for active states.
Core Behavior
Properties managing page count, current selection, and layout orientation.
| Property | Type | Description & Usage Example |
|---|---|---|
NumberOfPages |
int | pager.NumberOfPages = 5; The total number of pips to display. Minimum value is 1. |
SelectedPage |
int | pager.SelectedPage = 2; The index of the active page. Changing this triggers a smooth morphing animation of the indicator. |
Orientation |
Enum | pager.Orientation = Orientation.Vertical; Determines layout direction: Horizontal (default) or Vertical. |
Appearance & Gradient
Advanced styling options including gradient support for the active indicator.
| Property | Type | Description & Usage Example |
|---|---|---|
PipColor |
Color | pager.PipColor = Color.LightGray; |
SelectedPipColor |
Color | pager.SelectedPipColor = Color.Blue; The primary color of the active indicator. |
SelectedPipColor2 |
Color | pager.SelectedPipColor2 = Color.Cyan; Optional secondary color to create a gradient effect on the active indicator. |
GradientStyle |
Enum | pager.GradientStyle = LinearGradientMode.Horizontal; Direction of the gradient fill if Color2 is set. |
SelectedPipWidth |
int | pager.SelectedPipWidth = 30; The width of the active indicator. Usually wider than normal pips to create a "capsule" look. |
Animation & Effects
Fine-tune the movement physics and visual feedback effects.
| Property | Type | Description & Usage Example |
|---|---|---|
AnimationSpeed |
int | pager.AnimationSpeed = 6; Controls the velocity of the indicator morphing animation. Higher is faster. |
EnableSelectionRippleEffect |
bool | pager.EnableSelectionRippleEffect = true; Triggers a single expanding ring animation when the selection changes. |
EnableContinuousRipple |
bool | pager.EnableContinuousRipple = true; If true, the selected pip emits continuous pulses. Ideal for drawing attention to a specific step. |
Progress Mode
A unique feature that transforms the pager into a segmented progress bar.
| Property | Type | Description & Usage Example |
|---|---|---|
ProgressMode |
bool |
pager.ProgressMode = true;
Changes rendering logic. Instead of one selected pip, it fills pips from left to right based on Progress value.
|
Progress |
float | pager.Progress = 0.75f; A value between 0.0 and 1.0 representing completion. Supports partial filling of pips. |
Theme Presets
Programmatic helper methods to instantly apply professional color schemes.
// Vibrant gradients
pager.ThemeSunset();
pager.ThemeOcean();
pager.ThemeNeon();
// Standard UI styles
pager.ThemeDark();
pager.ThemeMinimal();
pager.ThemeCorporate();
// Status indicators
pager.ThemeSuccess(); // Green
pager.ThemeDanger(); // Red
pager.ThemeWarning(); // Yellow
Events
| Event | Description |
|---|---|
SelectedPageChanging |
Fired before selection updates. Can be cancelled via e.Cancel = true. |
SelectedPageChanged |
Fired after the selection animation begins. Contains PreviousPage and NewPage indices. |
PipClicked |
Fired when a specific pip is clicked by the user. |
Detailed Usage Examples
Example 1: Gradient Style Setup
Configures an elongated, gradient-filled indicator for a premium look.
private void InitializeAdvancedPager()
{
// Layout
pager.NumberOfPages = 6;
pager.PipSize = 10;
pager.SelectedPipWidth = 35; // Elongated active state
// Gradient Colors
pager.SelectedPipColor = Color.Magenta;
pager.SelectedPipColor2 = Color.Orange;
pager.GradientStyle = LinearGradientMode.Horizontal;
// Animation
pager.AnimationSpeed = 8; // Fast animation
pager.EnableSelectionRippleEffect = true;
}
Example 2: Using as a Progress Bar
Demonstrates the ProgressMode for a download or loading indicator.
private void UpdateDownloadProgress(int percent)
{
// Enable mode
pager.ProgressMode = true;
pager.NumberOfPages = 10; // 10 segments
// Update value (0.0 to 1.0)
pager.Progress = percent / 100f;
// Styling
pager.PipColor = Color.FromArgb(50, 50, 50);
pager.SelectedPipColor = Color.LimeGreen;
pager.SelectedPipColor2 = Color.Green;
}
Example 3: Continuous Attention Grabber
Uses the continuous ripple effect to highlight a specific step in a tutorial.
private void HighlightCurrentStep(int stepIndex)
{
pager.SelectedPage = stepIndex;
// Enable continuous pulsing to draw user attention
pager.EnableContinuousRipple = true;
// Use a bright color
pager.SelectedPipColor = Color.Gold;
pager.SelectedPipColor2 = Color.OrangeRed;
}