【问题标题】:Stuff in Windows Form Move When Maximized - C#Windows 窗体中的东西在最大化时移动 - C#
【发布时间】:2008-09-30 18:14:06
【问题描述】:

我已经有一段时间没有编写 GUI 程序了,所以这最终可能非常简单,但我在网上的任何地方都找不到解决方案。

基本上我的问题是,当我最大化我的程序时,窗口内的所有东西(按钮、文本框等)都停留在窗口中的相同位置,这导致靠近底部和右侧的地方有一个很大的空白区域边。

有没有办法让程序中的元素按比例拉伸?

【问题讨论】:

    标签: c# windows user-interface


    【解决方案1】:

    您想检查并正确设置窗体中每个控件的 Anchor 和 Dock 属性。控件上的 Anchor 属性告诉控件被“锚定”到窗体的哪一侧(上、下、左、右)。调整窗体大小时,控件与其锚点之间的距离将保持不变。例如,这使您可以将控件留在右下角。

    Dock 属性指示控件填充整个父窗体或填充它的一侧(同样是顶部、底部、左侧或右侧)。

    【讨论】:

      【解决方案2】:

      锚点和 Dock 属性

      【讨论】:

        【解决方案3】:

        http://msdn.microsoft.com/en-us/library/aa289756(VS.71).aspx查看动态布局:锚定和停靠示例

        它在VB中,但是你需要的概念和属性/方法在C#中是相同的。

        【讨论】:

          【解决方案4】:

          有一些布局面板控件可以帮助您在表单展开/收缩时保持比例:

          表格布局面板
          流布局面板

          【讨论】:

            【解决方案5】:

            至于布局,我不太清楚您的意思,但我使用的是 Visual Studio 2008 的默认 GUI 编辑器。

            您可以在表单上粘贴一些特殊的“容器”类型面板,例如FlowLayoutPanelTableLayoutPanel。这些类型的容器具有额外的布局行为。

            如果您发现您的某些控件在调整大小期间仍然不想表现,那么使用控件的右键单击上下文菜单列出控件的祖先:其父级、其父级的父级等。您可能会发现麻烦的控件是一些特殊容器的子容器,它有自己的布局规则。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2020-07-06
              • 1970-01-01
              • 2016-02-13
              • 2023-03-07
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多