【问题标题】:"Inner size" of a Control控件的“内部尺寸”
【发布时间】:2012-12-03 16:48:13
【问题描述】:

在 vb.net 中,获取“内部大小”的控件的属性是什么?我的意思是控件应该具有的大小不显示滚动条。 我想按照以下标准调整表单的大小:

-如果内部尺寸太小,使用默认的表格尺寸。

-如果内部大小在给定范围之间,则调整表单大小以使滚动条消失。

-如果内部尺寸太大,为表单设置最大尺寸并保持滚动条。

我正在使用Devexpress LayoutControl。 谢谢。

【问题讨论】:

    标签: vb.net controls


    【解决方案1】:

    您可以使用控件的ClientSize 属性(我强调)。

    控件的客户区是控件的边界,减去 非客户端元素,例如滚动条、边框、标题栏和 菜单。调用 SetClientSizeCore 方法设置 ClientSize 财产。 ClientSize 属性并不总是通过它的 set 方法,因此您应该覆盖 SetClientSizeCore 方法以 确保在设置 ClientSize 属性时执行您的代码。

    http://msdn.microsoft.com/en-us/library/system.windows.forms.control.clientsize%28v=vs.80%29.aspx

    【讨论】:

    • 感谢您的回复。使用 ClientSize,我得到的尺寸大于所需的有效尺寸。所以我在控件的底部得到了一个空白空间。我正在使用Devexpress LayoutControl
    • 无论如何,我想 ClientSize 不是我需要的。从描述中我了解到 ClientSize 是控件的边界,所以如果表单中的大小是 200x300 像素并且我有一个垂直滚动条,那么我得到的大小类似于 180x300。我不需要这个。如果垂直滚动条显示 150 个额外的像素,我想获得 200x450 像素的大小...清除为泥...
    • 在上面的评论中我谈论的是 PreferredSize!此属性有时给出的高度太大,有时又太短!
    • 但你是唯一回答我问题的人,所以我会接受你的回答!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-11
    • 1970-01-01
    • 2012-02-17
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多