Events and Callbacks
React to toggle state changes with event-driven programming.
Overview
The SiticoneToggleSwitch
provides various events and callbacks to respond to user interactions, state changes, and system updates. Developers can use these events to trigger custom logic, perform validations, or synchronize UI components dynamically.
1. Available Events and Callbacks 📅
Event
Type
Description
Toggled
EventHandler<ToggledEventArgs>
Fires when the toggle changes state (ON/OFF).
StateChanging
EventHandler<StateChangingEventArgs>
Fires before the state changes, allowing cancellation.
StateChanged
EventHandler<StateChangedEventArgs>
Fires after the state has changed successfully.
SystemThemeChanged
EventHandler<SystemThemeChangedEventArgs>
Fires when the system’s theme changes.
2. Handling Toggled
Event 🔘
Toggled
Event 🔘Use Case
Trigger Condition
Execute custom actions when the switch is toggled.
Fires every time the switch changes state.
Example
✅ This event ensures UI updates and state-dependent logic execution.
3. State Changing 🚧
Use Case
Trigger Condition
Prevent toggling under certain conditions.
Fires before the toggle state changes.
Example
✅ This event allows validation before state changes.
4. State Changed 🔄
Use Case
Trigger Condition
Execute logic after the toggle switch state has changed.
Fires only after the state update is completed.
Example
✅ Helps in tracking final state changes and performing post-change actions.
5. System Theme 🎨
Use Case
Trigger Condition
Adapt the toggle switch appearance to match OS theme changes.
Fires when Windows theme (Light/Dark) updates.
Example
✅ Ensures the toggle switch remains visually consistent with system themes.
6. Using These Events ✅
Event
Use Case
Toggled
When executing custom actions after a toggle state change.
StateChanging
When validating and preventing state changes dynamically.
StateChanged
When performing follow-up actions after a successful state change.
SystemThemeChanged
When adapting UI to match system-wide themes.
7. Common Pitfalls & Design Considerations 🛑
Pitfall
Cause
Solution
Event not firing
Handler not attached
Ensure the event is properly subscribed.
StateChanging
doesn’t prevent toggling
e.Cancel = true;
not set
Explicitly set the Cancel
property to true
.
Laggy UI updates
Heavy logic in event handlers
Move complex operations to background tasks.
8. Points Learned 🎯
Point
Description
Events provide better control over state changes.
Enables dynamic UI behaviors and custom logic execution.
Preventing unwanted toggles avoids unexpected user actions.
StateChanging
ensures proper validation before state updates.
Post-change actions can be automated.
StateChanged
helps synchronize UI and backend states.
9. Review Checklist ✔️
Item
Check
Is the Toggled event firing as expected?
✅
Does StateChanging properly prevent invalid toggles?
✅
Are UI updates synchronized with SystemThemeChanged?
✅
10. Key Takeaways
Key Takeaway
Description
Events allow real-time response to user interactions.
Enables immediate reactions to toggle changes.
State validation prevents incorrect behavior.
Avoids invalid or undesired state transitions.
Proper event usage improves UI adaptability.
Ensures consistent user experience across different themes.
11. Summary 📌
11.1 Feature Summary
Event
Trigger Condition
Usage
Toggled
Fires when the toggle state changes.
Execute actions when ON/OFF.
StateChanging
Fires before a state change occurs.
Validate and prevent changes when needed.
StateChanged
Fires after a state change is completed.
Perform follow-up tasks after toggle updates.
SystemThemeChanged
Fires when the OS theme changes.
Adapt toggle appearance dynamically.
11.2 Key Benefits
Benefit
Description
Allows developers to handle toggle events dynamically.
Supports real-time state tracking.
Prevents unwanted state changes when necessary.
StateChanging
provides full control over transitions.
Ensures UI consistency with OS themes.
Matches system-wide dark/light mode dynamically.
Last updated