-3

基本上我试图在滚动条出现之前将窗口大小自动设置为最小大小,从逻辑上讲,我认为如果我将窗口大小设置为这个大小并且所有组件都应该显示没有问题,我尝试了几个在回答其他问题但不起作用的答案中,最小大小为 0。

当我启动我的应用程序时,它没有显示完整的内容,我在 radform 中使用 Telerik 报告查看器(如果有人知道它是什么),但不要介意名称,报告查看器和 radform 只是扩展已知的 winform 和组件,因此适用相同的规则。

问题是当我显示窗口时它不会显示完整的组件,它主要是我需要通过调整窗口大小来删除的水平滚动条。

我尝试在表单和组件上输出 autoscrollminize 属性,但它们都是 0,0 但是如果滚动条出现并在我手动调整窗口大小时消失,则应该有一个属性/值可以用来设置窗口大小开始。

技术信息: 如果我取消停靠 reportviewer 组件,该组件已经停靠,滚动条出现在该组件内,因此关键是根据该组件中的数据确定垂直滚动条何时出现

我已经尝试将窗口的 autosize 属性设置为 true 并将大小设置为 10,10 找到最小大小/AutoScrollMinSize 将大小设置为首选大小(当我这样做时,窗口采用绝对最小的可能大小,仅显示标题栏.)

4

1 回答 1

2

表格最小尺寸是您在表格上设置的最小尺寸,它不是为您计算的最小值。

您需要计算/找出控件所需的空间,然后您将在表单高度/宽度中设置一个值。为了计算控件所需的空间,这取决于您:行数乘以行高 + 页眉/页脚高度?或类似的东西。

你甚至可以做一些不同的研究:如果有滚动条,在某个地方已经有你需要的值,你只需要找出它。为了进行这种研究,有一个非常有用的小型免费工具

Hawkeye - .Net 运行时对象编辑器 - http://hawkeye.codeplex.com/

它像属性网格一样工作,但您可以将其连接到正在运行的 .net 程序,它会向您显示所有内容(属性值、私有字段值、对象引用...),因此您可以尝试挖掘滚动条对象以查看是否你可以找出你的高度/宽度值。

于 2012-09-07T12:41:13.213 回答