У меня есть список переключателей в wpf, и я хочу, чтобы пользователь мог переключать несколько кнопок, перетаскивая их. Для этого я использовал MouseEnter-Event для каждой кнопки. Это работает, когда я нажимаю кнопку мыши вне кнопок и начинаю перетаскивать. Но когда я нажимаю кнопку мыши на кнопке и начинаю перетаскивать, MouseEnter-Event запускается только для первой кнопки, где я нажимал кнопку мыши (также не запускаются никакие другие события, такие как наведение или mousemove).
Вот код:WPF: MouseEnter не работает на нескольких кнопках при нажатии мыши
public void AddButton()
{
ToggleButton btn = new ToggleButton();
btn.MouseEnter += VisibilityButton_Enter;
this.gridButtons.Children.Add(btn);
}
private void VisibilityButton_Enter(object sender, MouseEventArgs e)
{
if (e.LeftButton == MouseButtonState.Pressed || e.RightButton == MouseButtonState.Pressed)
{
ToggleButton btn = sender as ToggleButton;
btn.IsChecked = !btn.IsChecked;
}
}
Я нашел решение использовать «перетаскивания» и DragOver мероприятие, но я думаю, что должно быть простое решение?