2

我正在尝试在 Visual Studio Express 中创建一个表格,如下所示:

桌子

我正在使用一个tableLayoutPanel. 如何tableLayoutPanel使用图片中的灰度样式为第一行着色,并可能在第一行的每个单元格中添加一些文本?

4

4 回答 4

1

ADataGridView会更好地满足您对样式定制的需求:

您可以为所需的任何行设置BackgroundColorand 。ForeColorDefaultCellStyle

于 2013-06-25T19:07:54.743 回答
1

您可以使用此事件方法绘制特定的单元格:

private void tableLayoutPanel_CellPaint(object sender, TableLayoutCellPaintEventArgs e)
{
    if (e.Row == 0 && e.Column == 1)
    {
        e.Graphics.FillRectangle(new SolidBrush(Color.Black), e.CellBounds);
    }
}

只需绘制您想要的行中的所有单元格。

于 2013-06-25T18:19:36.023 回答
1

您可以考虑使用DataGridView可以单独为每行着色并设置每列文本的位置。

有关更多信息,您可能需要查看此 stackoverflow 问题

于 2013-06-25T18:27:09.163 回答
0

你为什么不使用一个ListView
它看起来和你的图片一模一样,你可以在第一列的任何单元格和图标中放置文本,有一个标题,甚至是网格线......

将其View属性设置为View.Details以获得所需的行为。

于 2013-06-25T18:25:43.340 回答