空时在DataGridView中显示文本

时间:2019-02-09 16:55:33

标签: c# .net vb.net winforms datagridview

DataGridView为空时,如何在其灰色部分显示文本。

我找到了这个示例,但在VB.net中不起作用

GridView1.EmptyDataText="No Records Found";

1 个答案:

答案 0 :(得分:2)

EmptyDataText是Web窗体GridView控件的属性。在Windows窗体中,要在DataGridView没有任何行时显示文本,您需要自己呈现文本。为此,您可以处理Paint的{​​{1}}事件,并使用DataGridView渲染文本。

C#

TextRenderer.DrawText

VB.NET

private void dataGridView1_Paint(object sender, PaintEventArgs e)
{
    if (dataGridView1.Rows.Count == 0)
        TextRenderer.DrawText(e.Graphics, "No records found.",
            dataGridView1.Font, dataGridView1.ClientRectangle,
            dataGridView1.ForeColor, dataGridView1.BackgroundColor,
            TextFormatFlags.HorizontalCenter | TextFormatFlags.VerticalCenter);
}