2013-06-25 101 views
2

我试图做一个表中的Visual Studio Express的是这样的:着色行,添加文字

Table

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

+0

- Windows窗体应用程序。 –

+1

带有详细信息的ListView控件选择,并填写第一列,它会变成这样。 – Prix

+0

您可能需要修改“Paint”事件以实现所提供图片中的着色。 –

回答

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); 
    } 
} 

只是画你想要的行中的所有单元格。

0

为什么不使用ListView
它看起来酷似你的照片,你可以放置在第一列任意单元格和图标的文字,有一个头,甚至网格线...

设置其View属性为View.Details,以获得所需beavior 。

1

您可能会考虑使用DataGridView,您可以在其中分别对每行着色并设置每列文本。

欲了解更多信息,你可能想看看this stackoverflow question

1

一个DataGridView将更好地适应样式定制您的需求:

您可以设置BackgroundColorForeColorDefaultCellStyle你所需要的任何行。