我目前正在开发一个包含一个窗口的项目,该窗口需要显示1到9个用户控件。
我正在寻找确保所选用户控件数量使用可用空间的最佳方法。
e.g。如果选择了9个项目,则显示3 x 3的网格。但是,如果选择8,那么将显示2行3,下面有一行2。 (使用colspan)。
我一直在尝试使用统一网格,因为这看起来好像大多数所需的行为已经存在。 (显示已添加订单中的项目,自动调整大小为窗口大小)。但是,当选择的项目数量不能被3整除时,我很难实现某种形式的智能!
以前有人遇到过这个问题吗?或者可以提出一个合适的方法来解决问题?
谢谢!
答案 0 :(得分:1)
尝试使用WrapPanel
并将每个对象的Width
设置为换页面板大小的1/3。
当第一行填满时,这会自动将项目移动到新行
答案 1 :(得分:0)
坚持均匀的网格。由于听起来您想要3列,无论显示的控件数量如何,您只需使用:
<UniformGrid Columns="3" />
它会做你所要求的 - 如果你有8个控件,你将获得2x3 + 2以下的额外费用。