title: PreviewMouseDownEvent of Listbox blocking Command from Button
body: <p>In my main view I have a <code>Listbox</code> for which I set (among others) the <code>PreviewMouseLeftButtonDownEvent</code> that I use to support drag and drop re-ordering. </p>
  
  <pre><code>var style = ListBox.ItemContainerStyle;
  
  style.Setters.Add(new Setter(AllowDropProperty, true));
  
  style.Setters.Add(new EventSetter(PreviewMouseLeftButtonDownEvent, 
    new MouseButtonEventHandler(Input_Down)));
  
  private void Input_Down(object sender, EventArgs e)
  {
      if (!(sender is ListBoxItem))
         return;
  
      var draggedItem = sender as ListBoxItem;
  
      isDragging = true;
      StartDrag(draggedItem);
  }
  
  private void StartDrag(ListBoxItem draggedItem)
  {
      draggedItem.IsSelected = true;
      DragDrop.DoDragDrop(draggedItem, draggedItem.DataContext, DragDropEffects.Move);
  
  }
  </code></pre>
  
  <p>In the <code>ListBox.ItemTemplate</code> there is a button with an Update command:</p>
  
  <pre><code>    &lt;Button Command="{Binding Path=UpdateCommand}" Content="Button"/&gt;
  </code></pre>
  
  <p>However, the command is never triggered when I set the <code>PreviewMouseLeftButtonDownEvent</code>. If I remove the <code>PreviewMouseLeftButtonDownEvent</code> setter, the command works fine. Any ideas on why this is and how I can use both?</p>