【问题标题】:Why group box is not a member of container control?为什么分组框不是容器控件的成员?
【发布时间】:2015-12-29 02:38:05
【问题描述】:

https://msdn.microsoft.com/en-us/library/system.windows.forms.groupbox%28v=vs.110%29.aspx 是控制成员

容器控件是

https://msdn.microsoft.com/en-us/library/system.windows.forms.containercontrol%28v=vs.110%29.aspx

为可以运行的控件提供焦点管理功能 作为其他控件的容器。

然而 system.form.control 的每个成员都可以包含另一个控件。

如果控件的每个成员都可以包含另一个控件,为什么我们还有 system.windows.forms.containercontrol 类?

还有为什么可以包含另一个控件的分组框不是容器控件类的成员?

【问题讨论】:

    标签: visual-studio


    【解决方案1】:

    这可以追溯到远古时代,1985 年和 Windows 版本 1。GroupBox 实际上是一个按钮。它打开了BS_GROUPBOX style flag。匈牙利前缀无意描述的另一种情况:)

    他们不得不做一些非常疯狂的事情来将 GUI 操作系统塞进可用的硬件中,Windows 1 只需要 192 KB 的 RAM。让 BUTTON 类执行双重任务就是其中之一。否则没关系,每个窗口在设计上都能够像承载子控件的父控件一样,这种能力经常被忽视。您可以在this post 中找到一个实际示例。控件是否像容器一样在 Winforms 中用ControlStyles.ContainerControl 表示。

    问题在于 ContainerControl 派生自 ScrollableControl,正如您所料。无法滚动按钮。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-29
      • 1970-01-01
      • 2016-12-16
      • 2011-01-08
      • 2013-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多