c# - 如何在 Windows 窗体中排列元素,如 Windows 资源管理器
Posted
技术标签:
【中文标题】c# - 如何在 Windows 窗体中排列元素,如 Windows 资源管理器【英文标题】:c# - How to arrange elements in WindowsForm like Windows Explorer 【发布时间】:2013-10-16 09:06:27 【问题描述】:我正在填充一个自制的 Windows 资源管理器,它模拟 Microsoft Windows 资源管理器。这是我的 Windows 窗体的布局:
我想要的是:
但是当我最大化窗口时,它看起来像这样:
问题是treeView的宽度也增加了。如何阻止它?
有什么想法吗?我尝试了很多方法,但没有任何效果。
【问题讨论】:
【参考方案1】:尝试在您已有的 groupbox
和 splitcontainer
周围添加第二个 splitcontainer
。然后将底部的panel
设置为固定面板。
【讨论】:
如何添加一个垂直的splitContainer,因为它是水平的,默认为2列? 感谢伙伴!我已经解决了 groupbox 问题,但 treeView 不是......你能再帮我一次吗? 您可以在属性中更改方向。我相信面板的数量是固定的,但您可以在一个面板中放置另一个拆分容器。 感谢伙伴!我已经解决了 groupbox 问题,但 treeView 不是......你能再帮我一次吗 您在使用树视图时遇到什么问题?【参考方案2】:您可以设置SplitContainer.FixedPanel
属性来禁用其中一个面板的自动调整大小。这样,即使调整容器本身的大小,指定的面板也将保持相同的宽度/高度。
【讨论】:
【参考方案3】:您可以使用锚定(每个控件在“属性”菜单中都有),然后选择您希望它“锚定”到的对象。这应该允许您的控件拉伸以适应表单。
它可能很繁琐,因此您必须锚定每个控件并考虑如何设置它。如果您增加表单的高度,EG 要使控件扩展,请单击顶部和底部的锚点。
【讨论】:
以上是关于c# - 如何在 Windows 窗体中排列元素,如 Windows 资源管理器的主要内容,如果未能解决你的问题,请参考以下文章