在运行时添加 UIEliments,不重叠

Adding UIEliments at runtime, without overlapping

我在运行时通过隐藏代码向 canvas 添加了未知数量的图像,但我怀疑它们彼此重叠,因此只有 1 张图像可见。

我正在使用 ghostscript 将多页 PDF 转换为 jpg 图像,并希望将它们添加到滚动查看器中垂直顺序行中的 canvas。

目前我只是通过一个 for 循环生成每个 jpg 并将其添加到 canvas 和 canvas.children.add()

有没有通用的方法来确保添加到 canvas 的元素不重叠?还是人们用来确保 children.add 将元素放在正确位置的常用方法?

我正在考虑在我的 for 循环中我需要查看 canvas 上还存在什么并将高度加在一起并将我的新图像放置在正确的位置但我不确定这是如何完成的.有谁能指引我正确的方向吗?

您可以使用 StackPanel 而不是 Canvas 并在其中添加图像。然后 StackPanel 会将图像并排放置(或一张放在另一张下面,具体取决于它的 Orientation)。