public void MouseDown(MouseButton button)
{
MousePoint point;
if (!GetCursorPos(out point))
{
throw new InvalidOperationException("Could not get mouse position");
}
mouse_event
((int)(button == MouseButton.Left ? MouseEventFlags.LeftDown :
button == MouseButton.Middle ? MouseEventFlags.MiddleDown : MouseEventFlags.RightDown),
point.X, point.Y, 0, 0);
}