c# - 将 DataGridView 的最后一行卡住为列的总和?

标签 c# .net winforms datagridview

是否可以将 DataGridView 的最后一行作为列的总和,并且最后一行始终显示/卡住?

最佳答案

解决方案其实很简单,只需要你跳出框框思考一下。

通常,一旦数据加载到您的 GridView 中,它的底部就会出现一个深灰色的行:

您可以充分利用这个空间。您需要做的就是将几个标签拖到您的表单上,放置在您的 GridView 中,并应用背景颜色:

在您的代码中,添加如下方法:

void UpdateTotal(Label Label, int Number)
{
    // Called from another thread; facilitate safe cross-thread operation
    if(this.InvokeRequired)
        this.Invoke(new Action<Label, int>(UpdateTotal), new object[] {Label, Number});

    // Called from this thread or invoked
    else
        // Format the number with a thousands separator
        Label.Text = Number.ToString("N0");
}

然后,无论您在哪里更新 GridView ,调用 UpdateTotal(labelPostsAffected, 2000);,使用您的标签名称和您计算的总和(或在方法中计算) ).

结果是这样的:

关于c# - 将 DataGridView 的最后一行卡住为列的总和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2391663/

相关文章:

.net - 在运行时以通用方式将事件处理程序分配给对象实例

c# - Axis2 MTOM Web 服务和使用它的 .NET 客户端

c# - 如何将填充设置为 ListView 项目?

c# - 从已安装应用程序 C# 的代码隐藏在浏览器中打开链接

c# - DisplayFor 不适用于具有不同命名空间的相同模型名称

c# - Selenium webdriver c# 等待文本出现

C# 不重复的不可变和可变类型

c# - 使用列表 IndexOf 时未设置 Combobox SelectedIndex

c# - 从 SaveFileDialog 创建、写入和打开文本文件

c# - 在公共(public)项目中使用 mimekit nuget 包(通过 paket)从引用公共(public)项目的其他项目中删除现有的 System.net.http.dll