我试图做一个表中的Visual Studio Express的是这样的:着色行,添加文字
而我使用的是tableLayoutPanel
。如何使用灰度样式为tableLayoutPanel
中的第一行着色,并可能在第一行的每个单元格中添加一些文本?
我试图做一个表中的Visual Studio Express的是这样的:着色行,添加文字
而我使用的是tableLayoutPanel
。如何使用灰度样式为tableLayoutPanel
中的第一行着色,并可能在第一行的每个单元格中添加一些文本?
您可以使用此事件方法绘制特定细胞:
private void tableLayoutPanel_CellPaint(object sender, TableLayoutCellPaintEventArgs e)
{
if (e.Row == 0 && e.Column == 1)
{
e.Graphics.FillRectangle(new SolidBrush(Color.Black), e.CellBounds);
}
}
只是画你想要的行中的所有单元格。
为什么不使用ListView
?
它看起来酷似你的照片,你可以放置在第一列任意单元格和图标的文字,有一个头,甚至网格线...
设置其View
属性为View.Details
,以获得所需beavior 。
您可能会考虑使用DataGridView
,您可以在其中分别对每行着色并设置每列文本。
欲了解更多信息,你可能想看看this stackoverflow question
一个DataGridView
将更好地适应样式定制您的需求:
您可以设置BackgroundColor
和ForeColor
为DefaultCellStyle
你所需要的任何行。
- Windows窗体应用程序。 –
带有详细信息的ListView控件选择,并填写第一列,它会变成这样。 – Prix
您可能需要修改“Paint”事件以实现所提供图片中的着色。 –