如何计算PropertyGrid控件的高度?

时间:2019-02-06 15:41:33

标签: c# winforms

动态创建PropertyGrid并设置其SelectedObject属性后 我想设置其Height属性,以便适当地调整窗体的大小。

更新:每次选择的对象根据某些条件可能会有所不同,这意味着属性的数量可能会有所不同,高度也会有所不同:

var pgd = new PropertyGrid
          {
              SelectedObject = someObject
          };

我试图将Height作为其PropertyTabs的总和计算

pgd.Height = pgd.PropertyTabs.OfType<PropertyTab>().Sum(p => p.Height);

但是'PropertyTab'不包含高度的定义。

2 个答案:

答案 0 :(得分:1)

如果更改SelectedObject属性,则PropertyGrid控件不会调整大小。

如果高度不够,它将自动添加滚动条:

enter image description here

如果需要调整PropertyGrid的大小,则需要将其放在另一个容器中,并将Dock属性设置为fill。

答案 1 :(得分:0)

您可以使用此

var hgt = pgd.Size.Height;