获取表行中所有控件的高度

时间:2014-05-15 11:14:20

标签: c# winforms tablelayoutpanel

是否可以在表格行中获得控件的高度?

我希望得到表格行中所有控件的高度总和:

e.g。为此:

Table.SetCellPosition(labelControl3, new TableLayoutPanelCellPosition(0, 0));
Table.SetCellPosition(labelControl1, new TableLayoutPanelCellPosition(0, 1));
Table.SetCellPosition(labelControl2, new TableLayoutPanelCellPosition(0, 2));
Table.SetCellPosition(comboBoxSymbol, new TableLayoutPanelCellPosition(1, 1));
Table.SetCellPosition(comboBoxTimeFram, new TableLayoutPanelCellPosition(1, 2));

我想获得labelControl3,labelControl1和的高度  labelControl2或者也可以是labelControl3,comboBoxSymbol的高度  和comboBoxTimeFram

(因为表中总共有3个人)

1 个答案:

答案 0 :(得分:0)

这引出了为什么你需要这个问题 - 但是你可以迭代一个面板的所有控件,选择你想要的那一行:

private static int GetControlHeights(TableLayoutPanel panel, int row)
{
    var height = 0;
    foreach (Control control in panel.Controls)
    {
        if (panel.GetRow(control) != row)
            continue;
        height += control.Height;
    }
    return height;
}