C#将控件的最大大小设置为父控件';s当前大小

C#将控件的最大大小设置为父控件';s当前大小,c#,winforms,C#,Winforms,我有一个简单的拖放式图像查看器。它的设置如下所示 我有我的主要表格 我创建一个面板并将其拉伸到表单的大小,autoscroll=true 我将图片框停靠在面板中,sizemode=autosize 我将图片拖到图片框中,它会加载图片。图片框会根据图像的尺寸调整大小,我的面板会根据需要显示滚动条 现在我最大化了窗体…但是面板没有调整大小 因此,我将面板停靠在主窗体中,现在我将窗体最大化,面板将调整大小 但现在滚动条不见了。我猜问题是面板被允许调整大小到它所需要的大小,因此不再需要滚动条 我将面

我有一个简单的拖放式图像查看器。它的设置如下所示

  • 我有我的主要表格
  • 我创建一个面板并将其拉伸到表单的大小,
    autoscroll
    =true
  • 我将图片框停靠在面板中,
    sizemode
    =autosize
我将图片拖到图片框中,它会加载图片。图片框会根据图像的尺寸调整大小,我的面板会根据需要显示滚动条

现在我最大化了窗体…但是面板没有调整大小

因此,我将面板停靠在主窗体中,现在我将窗体最大化,面板将调整大小

但现在滚动条不见了。我猜问题是面板被允许调整大小到它所需要的大小,因此不再需要滚动条

我将面板的
MaximumSize
字段硬编码为1024x768,面板将自身大小调整为该大小,然后根据需要显示滚动条,因为图像较大


但是每个人的分辨率都不同,因此如何将面板的
MaximumSize
设置为其父面板的当前大小?父控件可以是另一个面板或窗体,但不是在我的特定情况下。

要使用窗体动态调整控件大小,可以使用Windows窗体控件的属性


我的建议是,您可以使用停靠属性,也可以从设计器设置这些属性。表单有一个名为Size的属性,它包含表单的高度和宽度(以像素为单位)。您可以使用它来设置控件的大小。我建议将该代码放入OnResize事件处理程序中,以便在每次修改表单时调整控件的大小