首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当文本为空时,在DataGridView中显示文本

当文本为空时,在DataGridView中显示文本
EN

Stack Overflow用户
提问于 2019-02-09 16:55:32
回答 1查看 1.1K关注 0票数 2

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

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

代码语言:javascript
复制
GridView1.EmptyDataText="No Records Found";
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-09 17:54:06

EmptyDataText是Web GridView控件的属性。在Windows中,要在DataGridView没有任何行时显示文本,需要自己呈现文本。为此,您可以处理Paint事件的DataGridView并使用TextRenderer.DrawText呈现文本。

C#

代码语言:javascript
复制
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);
}

VB.NET

代码语言:javascript
复制
Private Sub DataGridView1_Paint(sender As Object, e As PaintEventArgs) _
    Handles DataGridView1.Paint
    If DataGridView1.Rows.Count = 0 Then
        TextRenderer.DrawText(e.Graphics, "No records found.",
            DataGridView1.Font, DataGridView1.ClientRectangle,
            DataGridView1.ForeColor, DataGridView1.BackgroundColor,
            TextFormatFlags.HorizontalCenter Or TextFormatFlags.VerticalCenter)
    End If
End Sub
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54608435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档