UWP中用于绘制电路和操纵电路的最佳视觉控制是什么?

时间:2018-05-05 02:57:28

标签: uwp uwp-xaml

我愿意在UWP-Win10(秋季创作者)C#中编写一个用于模拟和分析电路的应用程序,以便在Windows应用商店中发布。我找到了所有的数学,算法和类。但我仍然坚持如何在屏幕上显示电路。下面是我想在UWP应用程序中显示的示例图像。 Example image of electric circuit

用户必须能够放置电子元件(电阻器,电容器等)的符号,连接电线,移动元件(带拖放),旋转等, 什么是最好的(XAML)视觉控制,或者这样做的控制组合?,网格?帆布?我猜元素必须是对象,它们是类的实例。我有设计类图,编写算法的知识,但我发现视觉事物有点困难。这些对象必须支持单击事件,并拖放以便在板中移动。我怎样才能做到这一点?我真的不知道解决这一层软件的正确方法。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以在Xaml中表示所有这些内容,但随着实体数量的增长,您可能会开始看到性能问题。另一种方法是使用像Win2D这样的绘图库来绘制和处理所有的操作和命中测试。 在Xaml中,您的主视图将包含一个Canvas,其中包含其他实体,可以是Rectange,Ellipse,Path,Line,TextBlock等基本实体,也可以是由UserControl对象构成的复合实体。我建议将每个电子实体封装在UserControl对象中。

<ScrollViewer>
    <Canvas>
        <Rectangle/>
        <Line/>         
        <Line/>
        <Ellipse/>
     </Canvas>   
</ScrollViewer>

或UserControl派生类的电阻和电容。

<ScrollViewer>
    <Canvas>
        <mycontrols:Resistor/>
        <Polyline/>
        <mycontrols:Capacitor/>
    </Canvas>
</ScrollViewer/>