Здравствуйте, VetalPPC, Вы писали:
VPP>Подскажите, пожалуйста, как словить событие клика средней кнопки мыши? Нужен именно полноценный клик. В MouseUp, к сожалению, не получается проверить был ли MouseDown перед этим сделан на том же элементе.
Если я правильно понял постановку задачи, то как то так (но подцепился я на PreviewMouseDown):
private void TxtSample2_OnPreviewMouseDown(object sender, MouseButtonEventArgs e)
{
if (e.ChangedButton == MouseButton.Middle)
((FrameworkElement)sender).CaptureMouse();
}
private void TxtSample2_OnMouseUp(object sender, MouseButtonEventArgs e)
{
if (e.ChangedButton == MouseButton.Middle)
{
var element = (FrameworkElement)sender;
element.ReleaseMouseCapture();
if (element.IsMouseOver)
MessageBox.Show("Middle button clicked");
else
MessageBox.Show("Middle button clicked outside");
}
}