我正在尝试创建一个包含 ResourceDictionaryStreamGeometries á la this answer,其中包含 Transforms 集:

<ResourceDictionary>
    <StreamGeometry x:Name="Chevrons">
        <StreamGeometry.Transform>
            <TranslateTransform X="20" Y="120"/>
        </StreamGeometry.Transform>
        M21.750001,94.749999 L34.000002,117.66218 30.625003,133.62501 17 [...]
    </StreamGeometry>
</ResourceDictionary>

但是,我收到以下错误:







所以我用 PathGeometry 试了一下,得到了这个错误:



有什么方法可以对 XAML 代码中的几何应用转换吗?还是我只需要通过代码来完成?

最佳答案

你可以这样写:

<PathGeometry x:Key="Chevrons">
    <PathGeometry.Transform>
        <TranslateTransform X="20" Y="120"/>
    </PathGeometry.Transform>
    <PathGeometry.Figures>
        M21.750001,94.749999 L34.000002,117.66218 30.625003,133.62501 ...
    </PathGeometry.Figures>
</PathGeometry>

或者像这样:
<PathGeometry x:Key="Chevrons"
    Figures="M21.750001,94.749999 L34.000002,117.66218 30.625003,133.62501 ...">
    <PathGeometry.Transform>
        <TranslateTransform X="20" Y="120"/>
    </PathGeometry.Transform>
</PathGeometry>

关于c# - 为什么我不能在 XAML 中定义带有变换的几何?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18057155/

10-10 07:21