Windows 8 XAML / C# - 如何在画布上绘制动态元素?

时间:2013-02-01 21:53:28

标签: c# xaml gridview canvas windows-8

我有一个用于图形的画布控件,需要能够动态地向其添加可变数量的数据点。也许我不知道做这种类型的事情的好控制但是我试图用GridView这样做:

<Canvas x:Name="GraphPointsAndLines" Canvas.ZIndex="2">
        <GridView x:Name="gvDataPoints">
            <GridView.ItemTemplate>
                <DataTemplate>
                    <Button IsEnabled="False" Canvas.Left="{Binding PointXValue}" Canvas.Top="{Binding PointYValue}" Content="{Binding Value}" Style="{StaticResource ButtonGraphPoint}" />
                </DataTemplate>
            </GridView.ItemTemplate>
        </GridView>
    </Canvas>

但是由于gridview的性质,它没有意识到子按钮元素是任何这样的画布的一部分,并且最终将它们堆叠在彼此之上。任何人都可以提出任何建议吗?

1 个答案:

答案 0 :(得分:0)

这可能很有趣:simple technique for databinding to position

基本上,让项目控件包含项目源并应用数据模板,设置其项目面板并应用项目容器样式。