如何在MVVM中绑定PathGeometry对象

时间:2017-12-12 10:21:42

标签: c# wpf mvvm binding pathgeometry

想象一个应用程序,用户可以在其中输入一些文本,并根据文本输入在图像上显示不同的符号。

我正在寻找一种生成Path对象列表的方法,并在XAML中绑定此列表,以在另一个path-image之上显示路径对象。 即我有一个简单的房子形象,用户输入的文字类似: “屋顶上的球,窗户上的花,花园里的铲子” 在ViewModel中,我将分析此文本,并为球生成路径Circle,花的路径为Star,铲斗的路径为Square。

我认为这些对象应放在List中,并在XAML中绑定到此列表。

“房子”的绘制方式如下:

<Border Grid.Column="1" CornerRadius="10" BorderBrush="Black" BorderThickness="0.3" Margin="5,0,0,0" Grid.RowSpan="2" Padding="5">
    <Viewbox xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" Stretch="Uniform">
        <Grid RenderTransformOrigin="0.5,0.5">
            <Grid.RenderTransform>
                <TransformGroup>
                    <ScaleTransform ScaleY="-1" ScaleX="1"/>
                    <SkewTransform AngleY="0" AngleX="0"/>
                    <RotateTransform Angle="0"/>
                    <TranslateTransform/>
                </TransformGroup>
            </Grid.RenderTransform>

            <Path Fill="Black" Data="{StaticResource Path1}"/>
            <Path Fill="Black" Data="{StaticResource Path2}"/>
            <Path Fill="Black" Data="{StaticResource Path3}"/>
            <Path Fill="Black" Data="{StaticResource Path4}"/>
            ...

        </Grid>
    </Viewbox>
</Border>

在所有“路径”之后,我想我将使用CombinedGeometry并绑定到VM列表。但我不确定这一部分。

0 个答案:

没有答案