Вы можете сделать первое (называют эту функцию без использования MouseButtonEventArgs
) просто делает другую функцию, которая SpatialControl_MouseDoubleClick
вызовов:
private void spatialControl_DoubleClick()
{
_camChanged = false;
DrawingControl.Viewport.Camera.Changed += Camera_Changed;
DrawingControl.ZoomSelected();
DrawingControl.Viewport.Camera.Changed -= Camera_Changed;
if (!_camChanged)
DrawingControl.ClipBaseSelected(0.15);
DrawingControl.Viewport.Camera.Position = new Point3D(100, 100, 1);
DrawingControl.Viewport.SetView(new Point3D(-1,-1,-1), new Vector3D(1,1,1), new Vector3D(1,2,1),5);
}
private void SpatialControl_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
spatialControl_DoubleClick();
}
В качестве альтернативы, вы можете сохранить вашу SpatialControl_MouseDoubleClick
функции, удалить ее параметры, а затем перейти к файлу [FormName].Designer.cs
, найдите строку
`this.[control-name].MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.SpatialControl_MouseDoubleClick);
и изменить его на
this.[control-name].MouseDoubleClick += (sender, e) => this.SpatialControl_MouseDoubleClick();
Затем код в файле [FormName].cs
будет выглядеть следующим образом:
private void SpatialControl_MouseDoubleClick()
{
_camChanged = false;
DrawingControl.Viewport.Camera.Changed += Camera_Changed;
DrawingControl.ZoomSelected();
DrawingControl.Viewport.Camera.Changed -= Camera_Changed;
if (!_camChanged)
DrawingControl.ClipBaseSelected(0.15);
DrawingControl.Viewport.Camera.Position = new Point3D(100, 100, 1);
DrawingControl.Viewport.SetView(new Point3D(-1,-1,-1), new Vector3D(1,1,1), new Vector3D(1,2,1),5);
}
Что вы имеете в виду под «заставить его работать без использования MouseButtonEventArgs»? Это обработчик событий, и он вызывается событием мыши. (В частности, двойной щелчок.) Почему бы не быть MouseButtonEventArgs в событии мыши? Кроме того, этот код не делает * ничего * с MouseButtonEventArgs, он указан, поэтому каким образом он не работает? – David
Какова цель удаления MouseButtonEventArgs? –
Так что мой проект о том, чтобы делать что-либо автоматически, например, я хочу отобразить модель, установить ее начальную позицию и затем повернуть модель, просто нажав «Запустить». После этого я не хочу никакого человеческого взаимодействия. Но все примеры, которые я нашел, - это использование MouseEventArgs или кнопок для поворота модели, поэтому я хочу изменить эти функции и заставить их работать с Event Args. Таким образом, этот класс является просто примером, потому что я не могу опубликовать весь свой проект, потому что это Huuuuuuuuuuuuuge –