释放鼠标按钮时,光标实际上会移动,因此您需要标记
MouseRightButtonUp
已处理的事件。你可以重写
OnMouseRightButtonUp
:
protected override void OnMouseRightButtonUp(MouseButtonEventArgs e)
{
base.OnMouseRightButtonUp(e);
e.Handled = true;
}
或者可以将类处理程序附加到MouseRightButtonUp事件以将其标记为已处理:
static MyComboBox()
{
EventManager.RegisterClassHandler(
typeof(MyComboBox),
MouseRightButtonUpEvent,
new MouseButtonEventHandler(MyComboBox_MouseRightButtonUp));
}
private static void MyComboBox_MouseRightButtonUp(
object sender, MouseButtonEventArgs e)
{
e.Handled = true;
}