Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net WPF。轴系_.net_Wpf_Canvas - Fatal编程技术网

.net WPF。轴系

.net WPF。轴系,.net,wpf,canvas,.net,Wpf,Canvas,如何在WPF画布中更改轴系统 在他的著作中展示了如何使用渲染变换来实现这一点 在第844页和后面,有一个很好的小示例应用程序,他将其命名为Canvas Modes,它演示了如何实现这一点。但基本上,您需要使用ScaleTransform和TranslateTransform 要使原点成为Y值向下的画布中心,请执行以下操作: <Canvas> <Canvas.RenderTransform> <TranslateTransform X="Act

如何在WPF画布中更改轴系统

在他的著作中展示了如何使用渲染变换来实现这一点

在第844页和后面,有一个很好的小示例应用程序,他将其命名为Canvas Modes,它演示了如何实现这一点。但基本上,您需要使用ScaleTransform和TranslateTransform

要使原点成为Y值向下的画布中心,请执行以下操作:

<Canvas>
    <Canvas.RenderTransform>
        <TranslateTransform X="ActualWidth/2" Y="ActualHeight/2"/>
    </Canvas.RenderTransform>
</Canvas>

要使原点成为画布的中心,但Y值向上,请执行以下操作:

<Canvas>
    <Canvas.RenderTransform>
        <TransformGroup>
            <ScaleTransform ScaleX="1" ScaleY="-1"/>
            <TranslateTransform X="ActualWidth/2" Y="ActualHeight/2"/>
        </TransformGroup>
    </Canvas.RenderTransform>
</Canvas>


当然,我在这里为ActualWidth和ActualHeight使用了一点伪代码…

您可以更具体地说明您想要将其更改为什么以及为什么。首先,我想将零点(0,0)从左上角移到画布的中心(ActualWidth/2,ActualHeight/2)其次,我想在不转动子元素的情况下将轴系统旋转180度您可以绑定到ActualWidth和ActualHeight,因为它们是依赖属性。。。但需要使用值转换器除以2。简单到可以做。。。但却把答案弄得乱七八糟