2

我有一个用户控件,我正在动态添加它作为主窗体的控件。Mainform 基本上是空的,除了底部有一个大的状态栏。

问题是,当我在我的用户控件上设置 Dockstyle.Fill 选项时,加载的用户控件的大小超出了状态栏(它填充了整个主窗体,就好像状态栏不存在一样)。

如何防止这种行为?这是我如何动态加载表单的示例

        logicForm = new LogicForm();
        this.Controls.Add(logicForm);
        logicForm.Dock = DockStyle.Fill;
4

2 回答 2

0

我认为您需要将 DockStyle 设置为 None 并改用 Anchor 属性。

将锚点设置为 Top、Bottom、Left、Right 并调整控件的大小以填充状态栏的所有空间。

您应该会发现,当您运行时,用户控件将随表单一起调整大小。

于 2012-09-18T07:44:41.843 回答
0

我刚刚找到了解决方案

如果我在主窗体上已经有一些其他控件,我需要将窗体放在前面以便正确停靠它:

logicForm.BringToFront();

在这里找到:http: //dotnetref.blogspot.kr/2008/08/using-dock-fill-on-control-when-you.html

-_________________________

于 2012-09-18T08:08:16.307 回答