【发布时间】:2021-08-09 14:05:15
【问题描述】:
这里的场景是:
我有一个画布,上面画着不同的图表。现在的要求是使用 C# 或 VB 后面的代码放大画布。此外,我需要将缩放代码放在一些 dll 中,以便我可以在整个应用程序中重用相同的代码集。
现在我的问题是如何做到这一点......
我已经尝试了以下代码,请看一下..
public MainWindow()
{
InitializeComponent();
canvas.MouseEnter += new MouseEventHandler(canvas_MouseEnter);
canvas.MouseWheel += new MouseWheelEventHandler(canvas_MouseWheel);
}
void canvas_MouseWheel(object sender, MouseWheelEventArgs e)
{
double height = canvas.ActualHeight;
double width = canvas.ActualWidth;
double zoom = e.Delta;
height += 2;
width += 2;
ScaleTransform sc = new ScaleTransform(width, height);
canvas.LayoutTransform = sc;
canvas.UpdateLayout();
}
【问题讨论】:
-
听起来你应该看看如何使用 ScaleTransform,但你还没有提出任何问题。
-
Ya Eric....我已经尝试过缩放变换,这是我想要在调用 mouseWheel 事件时执行的代码...
-
双倍高度 = canvas.ActualHeight;双倍宽度 = canvas.ActualWidth;双倍变焦 = 5;高度 += 缩放;宽度 += 缩放; canvas.LayoutTransform = new ScaleTransform(height, width); 代码