public static void IsDragClickStartedPropertyChanged(DependencyObject o, DependencyPropertyChangedEventArgs e) { bool isDragClickStarted = DragSelectionHelper.GetIsDragClickStarted(DragSelectionHelper.ListBox); // if click has been drag click has started, clear the current selected items and start drag selection operation again if (isDragClickStarted) { DragSelectionHelper.ListBox.SelectedItems.Clear(); } }
public static void IsDragSelectingPropertyChanged(DependencyObject o, DependencyPropertyChangedEventArgs e) { StackPanel item = o as StackPanel; bool clickInitiated = DragSelectionHelper.GetIsDragClickStarted(DragSelectionHelper.ListBox); // this is where the item.Parent was null, it was supposed to be the ListBox, I guess it's null because items are not // really StackPanels but are wells if (clickInitiated) { bool isDragSelecting = DragSelectionHelper.GetIsDragSelecting(item); if (isDragSelecting) { // using the ListBox static reference because could not get to it through the item.Parent property DragSelectionHelper.ListBox.SelectedItems.Add(item); } } }