【问题标题】:How to programmatically change the scale of a canvas?如何以编程方式更改画布的比例?
【发布时间】:2015-10-17 10:24:55
【问题描述】:

给定一个画布对象:

MainCanvas = new Canvas();
MainCanvas.Name = "myCanvas";
MainCanvas.Height = 100;
MainCanvas.Width = 100;

如何通过代码设置其比例(xy)?

【问题讨论】:

    标签: c# wpf canvas


    【解决方案1】:

    试试这个:

    ScaleTransform scale = new ScaleTransform(MainCanvas.LayoutTransform.Value.M11 * ScaleRate, MainCanvas.LayoutTransform.Value.M22 * ScaleRate);
    MainCanvas.LayoutTransform = scale;
    MainCanvas.UpdateLayout();
    

    【讨论】:

    • 画布的宽度和高度映射到Transorm对象中的单位。正确的缩放命令是:ScaleTransform scale = new ScaleTransform(myCanvas.LayoutTransform.Value.M11 * ScaleRate, myCanvas.LayoutTransform.Value.M22 * ScaleRate)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-16
    • 1970-01-01
    • 1970-01-01
    • 2012-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多