首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在现有控件下放置新面板?

如何在现有控件下放置新面板?
EN

Stack Overflow用户
提问于 2014-05-30 13:35:17
回答 2查看 7.5K关注 0票数 12

这种情况经常发生:我布置了很多控件,我决定将它们放在一个面板中,不管出于什么原因--也许是为了在不影响其他控件的情况下同时禁用它们,或者隔离一些单选按钮等等。

我发现在“我的控件下面”添加一个System.Windows.Forms.Panel是一个很麻烦的操作。这通常涉及调整父控件或窗体的大小,以便我可以将面板添加到与即将占用面板的控件集合相邻的临时空间中,然后将控件拖到面板上,然后将父控件/窗体大小设置为以前的大小。

通常,我在各种控件上以不同的方式设置了锚,这样就不会简单地调整父控件的大小,而不需要仔细调整控件的布局,使其变得一团糟。

对于如此简单的操作来说,这显然是一个乏味的过程。这样做是否有VS技巧(除了手工编辑设计器生成的文件外,这意味着我必须手动选择我想要重新命名的控件)?

EN

回答 2

Stack Overflow用户

发布于 2018-02-19 05:49:14

马特有一个很好的答案,但这可能会容易一些。

在窗体上放置一个面板,并将Dock设置为full。您将无法看到任何您的控件。然后打开表单的Document Outline。将每个控件拖放到Panel1上。每个控制都会在你想要的地方降落。现在,如果您愿意,只需设置Panel1.Disabled = true,就可以禁用面板中的所有控件。

如果有您不希望作为面板一部分的控件。选择Document Outline中的控件并选择Bring to Front。此控件将是可见的,不受设置面板启用属性的影响。

票数 8
EN

Stack Overflow用户

发布于 2019-10-12 12:49:28

这种情况偶尔也会发生在我身上,我改变主意,希望现有的控件现在位于面板(或其他一些container...GroupBox、FlowLayout等)中。

在大多数情况下,Microsoft提供的答案对我很有用,并在这里记录了:将现有控件重新分配给其他父控件

不是将容器控件拖到窗体上,而是在现有控件周围“绘制”容器控件的轮廓,然后容器将抓取现有控件并使它们成为子控件。

步骤:

  1. 在“工具箱”中,单击以选择要使用的容器控件,然后松开鼠标按钮。不要将控件拖到窗体上。
  2. 将鼠标移动到现有控件所在的窗体区域,并注意指针更改为十字,并显示您所选择的任何新容器控件的图标。
  3. 按住鼠标按钮,然后拖动并绘制“围绕”现有控件的新控件的轮廓。请注意完全包围所有控件;如果将新容器控件的边框与控件太近,则现有控件可能不会包括在内。
  4. 放开鼠标按钮。

就这样。现有控件现在应该是容器的子控件。我知道它适用于VS 2015和更新版本,但我猜在此之前至少有几个版本可以使用它。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23955908

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档