Slider Thumb DragCompleted Event WPF
Occurs when the Thumb control loses mouse capture.
The following example shows how to assign an event handler for the DragCompleted event to a Thumb control, and how to define the event handler.
#region Constructor public void Initialize(UIElement element) { var sliderBox = FindChild(Application.Current.MainWindow, "MySlider"); slider.AddHandler(System.Windows.Controls.Primitives.Thumb.DragCompletedEvent, new System.Windows.Controls.Primitives.DragCompletedEventHandler(SliderPositionOnDragCompleted)); }
private void SliderPositionOnDragCompleted(object sender, DragCompletedEventArgs e) { try { var d = sender as Slider; Trace.Debug("SliderPositionOnDragCompleted " + d.Name); } catch (Exception exception) { Trace.Error(exception); } }
public static T FindChild(DependencyObject parent, string childName) where T : DependencyObject { // Confirm parent and childName are valid. if (parent == null) return null; T foundChild = null; int childrenCount = VisualTreeHelper.GetChildrenCount(parent); for (int i = 0; i < childrenCount; i++) { var child = VisualTreeHelper.GetChild(parent, i); // If the child is not of the request child type child T childType = child as T; if (childType == null) { // recursively drill down the tree foundChild = FindChild (child, childName); // If the child is found, break so we do not overwrite the found child. if (foundChild != null) break; } else if (!string.IsNullOrEmpty(childName)) { var frameworkElement = child as FrameworkElement; // If the child's name is set for search if (frameworkElement != null && frameworkElement.Name == childName) { // if the child's name is of the request name foundChild = (T)child; break; } } else { // child element found. foundChild = (T)child; break; } } return foundChild; }