我试图在winform(C#.NET)上获得一个非常简单的自动调整布局。我已经尝试过TableLayoutPanels和FlowLayoutPanels,但没有任何效果。
我有一个usercontrol,它是在运行时创建的其他用户控件的容器 - 我称之为StackPanel,因为我希望它垂直列出子控件。我已经尝试使用FlowLayoutPanel,TableLayoutPanel和Panel(每个控件都停靠在顶部)。
子用户控件包含一个标签,然后是任意数量的单选按钮(或任何其他标准控件 - 无关紧要)。
创建子控件时,将设置标签文本(如果这很长,则需要换行到新行)并添加单选按钮。
使用Resize事件似乎没有对接/自动调整或手动大小设置的组合,这些事件可以在不剪切的情况下显示所有内容,并且仍然可以使用表单调整大小。
谢谢!
答案 0 :(得分:2)
我和两个小组都有类似的经历。
FlowLayoutPanel的:
您基本上必须将您的子窗口小部件固定在左上角。不要停靠它们。也不要将它们固定在右侧。标签自动调整大小仅适用于此配置。
然后,您可以捕获FlowLayoutPanel的resize事件并手动调整子组件的所有宽度。