在flowLayoutPanel中冻结顶部子项

时间:2018-05-03 12:02:09

标签: c# winforms

我在主流布局面板中有多个流程布局面板。

我想在父级中冻结顶部面板,以便在垂直滚动时顶部面板位于其位置,而其他子面板将滚动。

就像数据网格中的标题行一样。

我怎样才能实现这个目标?

1 个答案:

答案 0 :(得分:0)

最简单的方法是更改​​控制结构。 不是将所有内部面板作为最外部流动布局面板的直接子项,而是只有两个直接子项 - 您的"标题"流动布局面板,另一个面板充当"身体"并保留所有其他流动布局面板 - 然后您只能滚动"身体"面板。

这是一个伪xaml,可以帮助您将其可视化:

<flowLayoutPanel> <!-- main -->
    <flowLayoutPanel> <!-- header -->
    </flowLayoutPanel>
    <flowLayoutPanel> <!-- body, this is the one you want to scroll -->
        <flowLayoutPanel> <!-- content -->
        </flowLayoutPanel>
        <flowLayoutPanel> <!-- content -->
        </flowLayoutPanel>
        <flowLayoutPanel> <!-- content -->
        </flowLayoutPanel>
    </flowLayoutPanel>
</flowLayoutPanel>

和图片,如果您愿意:

enter image description here