winforms - Winforms MDI 客户区的大小/位置

标签 winforms mdi mdichild mdiparent

MDI 表单内部是一个承载 mdi 子表单的客户区。我怎么知道那个区域有多大?到目前为止,我能想到的最好方法是找到父级潜在客户区的总大小 (mdiparent.ClientRectangle),然后减去工具栏等从客户区带走的组件的大小。有更好的方法吗?

最佳答案

窗体上没有任何属性可让您访问 MDI 客户端窗口。但是你可以像这样找到它:

public MdiClient GetMdiClientWindow() {
  foreach (Control ctl in this.Controls) {
    if (ctl is MdiClient) return ctl as MdiClient;
  }
  return null;
}

从那里,只需使用它的 Size 属性。

关于winforms - Winforms MDI 客户区的大小/位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/603788/

相关文章:

c# - 如何使 WinForms UserControl 填充其容器的大小

c# - 从没有 showdialog 的表单关闭时返回一个值

c# - 覆盖 Winforms ComboBox 自动完成建议规则

c# - 如何避免或限制 MDI 子窗体菜单条与 MDI 父窗体菜单条合并?

c# - MSCharts 和 .NET 3.5 SP1

c# - MDI 父项上的垂直滚动条不会逐渐滚动

c# - 指定为此表单的 MdiParent 的表单不是 MdiContainer

c# - 从另一个子窗体打开一个子窗体并将 MDI 设置为父窗体 - 怎么办?

c# - 标签不会实时变化

c# - 检测窗体何时关闭 C#