WPF Panel对象放置逻辑:是否存在垂直分布水平固定项以防止重叠的算法?

时间:2010-12-16 19:29:59

标签: wpf algorithm panel

由于“一张图片说千言万语”,请参阅下面的图片,了解我在WPF中使用自定义Panel尝试实现的目标。 (不幸的是,因为我是一个相对较新的用户,所以我不能放置这样的图像 - 所以它就是字符!)

(每个'方框'用数字表示,方框的重叠区域用' - '表示,时间是从左到右的horiztonal)

我不想要这个:

    111111111-----2222222222----------2222222222222222222222222-----22222

我想要这个:

             222222222222222222222222222222222222222222222222222222222222
    11111111111111          3333333333                         44444

所以你可以看到我想要在垂直方向上移动物体以防止在水平方向上重叠。所以在我的例子中,'方框2'已被移位以防止与'方框1'的部分重叠以及与方框'3'和'4'的整个重叠。为了清楚起见,我对对象的水平(左边和宽度属性)的逻辑没有任何问题。

我想知道:是否有一种算法可以自动替换垂直中的对象以防止这种重叠。 (显然,我需要一个通用的解决方案,并不仅仅特别适用于我上面的例子。)

非常感谢任何帮助。

侨, 皮特

1 个答案:

答案 0 :(得分:0)

你看过WrapPanel吗?它看起来与你想要的相似。