Я пытаюсь сделать эффект масштабирования на картинке с колесиком мыши. Все в порядке, за исключением того, что когда я использую среднюю кнопку мыши для увеличения или уменьшения масштаба, это нормально, но это не увеличивает и не уменьшает точку, на которой находится курсор мыши. Когда я увеличиваю точку, я хочу, чтобы она всегда скользила. Пожалуйста, помогите мне добавить фрагмент кода, чтобы он работал.
Вот мой код:
int i = 5;
int index = 10;
private double[] zoomfactor = { .25, .33, .50, .66, .80, 1, 1.25, 1.5, 2.0, 2.5, 3.0 };
private void Zoom(int i)
{
double new_Zoom = zoomfactor[i];
imgBox.Width = Convert.ToInt32(imgBox.Image.Width * new_Zoom);
imgBox.Height = Convert.ToInt32(imgBox.Image.Height * new_Zoom);
}
private void On_wheel(object sender, System.Windows.Forms.MouseEventArgs e)
{
i = i + e.Delta / 120;
if (i < 0)
{
i = 0;
}
else
{
if (i <= index)
i = i;
else
i = index;
}
Zoom(i);
}