具有分布宽度的元素的布局控制

时间:2012-02-16 20:00:13

标签: c# wpf xaml layout

我不确定如何说出这个问题,所以我只是解释一下我要做的事情。我有一个Model / ViewModel,它基本上包含一个元素列表。列表中的某些元素应使用静态宽度形状(例如10x10像素矩形)表示,而其他元素应拉伸以均等分布所有元素之间的剩余宽度。

例如,假设列表包含以下内容:

(静态静态动态动态静态动态动态)

静态元素的宽度为10px。我希望每个动态元素同样占用容器中的剩余空间。例如,如果我的容器有100个像素,因为我有3个静态元素,我希望70个像素的其余部分分布在5个动态元素上(每个14个像素)。

是否有WPF控件可以执行此操作,还是需要动态调整大小并在窗口大小调整上添加控件?

2 个答案:

答案 0 :(得分:2)

Grid( - 阅读本文 - )中,您可以让行和列执行此操作,将RowDefiniton.Height / ColumnDefiniton.Width更改为Auto以将内容大小更改为内容*分配剩余空间。

答案 1 :(得分:2)

听起来你可以使用标准的网格控件。为每个元素添加一列,并将列宽设置为需要它的元素的特定大小,并对其余元素使用*。