winform 中操作tableLayoutPanel控件
获取控件所在的行号
///this.panel6是表示在控件tableLayoutPanel7的控件
int my_r1 = tableLayoutPanel7.GetRow(this.panel6);
获取控件所在的列号:
///this.panel6是表示在控件tableLayoutPanel7的控件
int my_c1 = tableLayoutPanel7.GetColumn(this.panel6);
获取、设置行高和列宽:
/// <summary>
/// 获取TableLayoutPanel指定行的高度
/// </summary>
/// <param name="layout">TableLayoutPanel</param>
/// <param name="row">行号</param>
/// <returns>行高</returns>
public float GetTlpRowHeight(TableLayoutPanel layout, int row)
{
float height = 0;
int count = layout.RowCount;
if (row > count) return 0;
for (int i = 1; i <= count; i++)
{
if (!i.Equals(row)) continue;
height = layout.RowStyles[i].Height;
break;
}
return height;
}
/// <summary>
/// 设置TableLayoutPanel指定行的高度
/// </summary>
/// <param name="layout">TableLayoutPanel</param>
/// <param name="row">行号</param>
/// <returns>行高</returns>
public void SetTlpRowHeight(TableLayoutPanel layout, int row, float height)
{
int count = layout.RowCount;
if (row > count) return;
for (int i = 1; i <= count; i++)
{
if (i == row)
{
layout.RowStyles[i].Height = height;
return;
}
}
}
/// <summary>
/// 获取TableLayoutPanel指定列的宽度
/// </summary>
/// <param name="layout">TableLayoutPanel</param>
/// <param name="row">列号</param>
/// <returns>列宽</returns>
public float GetTlpColWidth(TableLayoutPanel layout, int col)
{
float width = 0;
try
{
int count = layout.ColumnCount;
if (col > count) return 0;
for (int i = 0; i <= count; i++)
{
if (!i.Equals(col)) continue;
width = layout.ColumnStyles[i].Width;
break;
}
}
catch
{
return width;
}
return width;
}
/// <summary>
/// 设置TableLayoutPanel指定列的宽度
/// </summary>
/// <param name="layout">TableLayoutPanel</param>
/// <param name="row">列号</param>
/// <returns>列宽</returns>
public void SetTlpColWidth(TableLayoutPanel layout, int col, float width)
{
try
{
int count = layout.ColumnCount;
if (col > count) return;
for (int i = 0; i <= count; i++)
{
if (i == col)
{
layout.ColumnStyles[i].Width = width;
return;
}
}
}
catch { return; }
}