【问题标题】:Flowlayout panel and autosizing child controls doesn't workFlowlayout 面板和自动调整子控件的大小不起作用
【发布时间】:2010-05-07 12:55:30
【问题描述】:

我正在尝试在 winform (C# .NET) 上获得一个非常简单的自动调整布局。我已经尝试过 TableLayoutPanels 和 FlowLayoutPanels 但没有任何效果。

我有一个用户控件,它是在运行时创建的其他用户控件的容器 - 我将其命名为 StackPanel,因为我希望它垂直列出子控件。我已经尝试过使用 FlowLayoutPanel、TableLayoutPanel 和 Panel(每个控件都停靠在顶部)。

子用户控件包含一个标签,然后是任意数量的单选按钮(或任何其他标准控件 - 没关系)。

创建子控件时,会设置标签文本(如果它很长,则需要换行)并添加单选按钮。

似乎没有使用 Resize 事件的停靠/自动调整大小或手动大小设置的组合,可以让所有内容在不裁剪的情况下显示,并且仍然随着表单调整大小。

谢谢!

【问题讨论】:

    标签: .net winforms autosize flowlayoutpanel tablelayoutpanel


    【解决方案1】:

    我对这两个面板都有类似的体验。

    流布局面板:

    您基本上必须将您的子小部件固定在左上角。不要停靠它们。也不要将它们锚定在右侧。标签自动调整大小仅适用于此配置。

    然后你可以捕获FlowLayoutPanel的resize事件,手动调整你的子组件的所有宽度。

    【讨论】:

    • 设置事件处理程序真的是唯一的方法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    • 1970-01-01
    • 1970-01-01
    • 2019-08-21
    • 1970-01-01
    • 2013-02-19
    • 2016-05-29
    相关资源
    最近更新 更多