如何优化DataGridView的性能

2024-02-14

我的 Windows 应用程序窗体上有一个 DataGridView 控件。此 DataGridView 是基于纯文本文件(由用户在运行时指定)填充的。因此,列数和行数是动态计算的。现在一切都按预期工作正常,唯一的问题是我的 DataGridView 花了很多时间来加载数据,有什么方法可以优化 DataGridView 的性能吗?

提示:通常 datagridview 包含 1024 列和大约 100 行。

以下是填充我的 DataGridView 的代码

dataGridView1.ColumnCount = nColumnCount;

for (int i = 0; i < CurrPageLines.Length; i++)
{
    string sCurrLinecontents = CurrPageLines[i];
    int n = dataGridView1.Rows.Add();
    for (int j = 0; j < /*nColumnCount*/sCurrLinecontents.Length; j++)
    {
        dataGridView1.Rows[n].Cells[j].Value = sCurrLinecontents[j];
    }
}

MSDN 上有一篇文章如何使用datagridview的虚拟模式 http://msdn.microsoft.com/en-us/library/ms171622.aspx。它甚至还带有一个很好的演练示例 http://msdn.microsoft.com/en-us/library/15a31akc.aspx。尽管它似乎更针对大量行而不是大量列,但它可能仍然有用。

Update:如果您在加载数据时遇到延迟,您可以通过创建一个DataTable or a BindingList从文本文件中获取,然后将其绑定到视图。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何优化DataGridView的性能 的相关文章

  • .NET 中是否有内置函数可以对密码进行哈希处理?

    我看到这个问题加密 散列数据库中的纯文本密码 https stackoverflow com questions 287517 encrypting hashing plain text passwords in database 我知道我
  • 嵌套接口:将 IDictionary> 转换为 IDictionary>?

    我认为投射一个相当简单IDictionary
  • 使用实体框架模型输入安全密钥

    这是我今天的完美想法 Entity Framework 中的强类型 ID 动机 比较 ModelTypeA ID 和 ModelTypeB ID 总是 至少几乎 错误 为什么编译时不处理它 如果您使用每个请求示例 DbContext 那么很
  • BitTorrent 追踪器宣布问题

    我花了一点业余时间编写 BitTorrent 客户端 主要是出于好奇 但部分是出于提高我的 C 技能的愿望 我一直在使用理论维基 http wiki theory org BitTorrentSpecification作为我的向导 我已经建
  • 用于登录 .NET 的堆栈跟踪

    我编写了一个 logger exceptionfactory 模块 它使用 System Diagnostics StackTrace 从调用方法及其声明类型中获取属性 但我注意到 如果我在 Visual Studio 之外以发布模式运行代
  • 关于 C++ 转换:参数 1 从“[some_class]”到“[some_class]&”没有已知的转换

    我正在研究 C 并且遇到了一个错误 我不知道确切的原因 我已经找到了解决方案 但仍然想知道原因 class Base public void something Base b int main Base b b something Base
  • 使用 WebClient 时出现 System.Net.WebException:无法创建 SSL/TLS 安全通道

    当我执行以下代码时 System Net ServicePointManager ServerCertificateValidationCallback sender certificate chain errors gt return t
  • C#中如何移动PictureBox?

    我已经使用此代码来移动图片框pictureBox MouseMove event pictureBox Location new System Drawing Point e Location 但是当我尝试执行时 图片框闪烁并且无法识别确切
  • C++ OpenSSL 导出私钥

    到目前为止 我成功地使用了 SSL 但遇到了令人困惑的障碍 我生成了 RSA 密钥对 之前使用 PEM write bio RSAPrivateKey 来导出它们 然而 手册页声称该格式已经过时 实际上它看起来与通常的 PEM 格式不同 相
  • 创建链表而不将节点声明为指针

    我已经在谷歌和一些教科书上搜索了很长一段时间 我似乎无法理解为什么在构建链表时 节点需要是指针 例如 如果我有一个节点定义为 typedef struct Node int value struct Node next Node 为什么为了
  • 将多个表映射到实体框架中的单个实体类

    我正在开发一个旧数据库 该数据库有 2 个具有 1 1 关系的表 目前 我为每个定义的表定义了一种类型 1Test 1Result 我想将这些特定的表合并到一个类中 当前的类型如下所示 public class Result public
  • 重载<<的返回值

    include
  • SolrNet连接说明

    为什么 SolrNet 连接的容器保持静态 这是一个非常大的错误 因为当我们在应用程序中向应用程序发送异步请求时 SolrNet 会表现异常 在 SolrNet 中如何避免这个问题 class P static void M string
  • 如何序列化/反序列化自定义数据集

    我有一个 winforms 应用程序 它使用强类型的自定义数据集来保存数据进行处理 它由数据库中的数据填充 我有一个用户控件 它接受任何自定义数据集并在数据网格中显示内容 这用于测试和调试 为了使控件可重用 我将自定义数据集视为普通的 Sy
  • 什么时候虚拟继承是一个好的设计? [复制]

    这个问题在这里已经有答案了 EDIT3 请务必在回答之前清楚地了解我要问的内容 有 EDIT2 和很多评论 有 或曾经 有很多答案清楚地表明了对问题的误解 我知道这也是我的错 对此感到抱歉 嗨 我查看了有关虚拟继承的问题 class B p
  • 使用 x509 证书签署 json 文档或字符串

    如何使用 x509 证书签署 json 文档或字符串 public static void fund string filePath C Users VIKAS Desktop Data xml Read the file XmlDocum
  • 链接器错误:已定义

    我尝试在 Microsoft Visual Studio 2012 中编译我的 Visual C 项目 使用 MFC 但出现以下错误 error LNK2005 void cdecl operator new unsigned int 2
  • 向现有 TCP 和 UDP 代码添加 SSL 支持?

    这是我的问题 现在我有一个 Linux 服务器应用程序 使用 C gcc 编写 它与 Windows C 客户端应用程序 Visual Studio 9 Qt 4 5 进行通信 是什么very在不完全破坏现有协议的情况下向双方添加 SSL
  • 基于 OpenCV 边缘的物体检测 C++

    我有一个应用程序 我必须检测场景中某些项目的存在 这些项目可以旋转并稍微缩放 更大或更小 我尝试过使用关键点检测器 但它们不够快且不够准确 因此 我决定首先使用 Canny 或更快的边缘检测算法 检测模板和搜索区域中的边缘 然后匹配边缘以查
  • 是否可以在 .NET Core 中将 gRPC 与 HTTP/1.1 结合使用?

    我有两个网络服务 gRPC 客户端和 gRPC 服务器 服务器是用 NET Core编写的 然而 客户端是托管在 IIS 8 5 上的 NET Framework 4 7 2 Web 应用程序 所以它只支持HTTP 1 1 https le

随机推荐

  • 为什么 JSF 将 UI 组件的状态保存在服务器上?

    JSF 在服务器端保存 UI 组件的状态到什么时间以及 UI 组件的状态信息具体何时被删除从服务器内存 当应用程序上的登录用户浏览页面时 组件的状态是否会继续在服务器上累积 我不明白在服务器上保持 UI 组件状态有什么好处 直接将验证 转换
  • 签署 Windows EXE 文件

    我有一个EXE http en wikipedia org wiki EXE我想要签署该文件 以便 Windows 不会警告最终用户来自 未知发布者 的应用程序 我不是 Windows 开发人员 所讨论的应用程序是从生成屏幕保护程序的应用程
  • Python:在类实例初始化之前修改传递的参数

    我正在尝试用 Python 实现简化的术语重写系统 TRS 符号代数系统 为此 我真的希望能够在类实例实例化过程中的特定情况下拦截和修改操作数 我想出的解决方案是创建一个元类来修改典型的call类对象 类型为 type 的行为 class
  • 如何在 Javascript 中说明多重图? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 这个问题正在寻找一种实用且简单的方法来使用 Javascript 绘制多重图 首先看this http
  • 在 MVVM 中,ViewModel 响应视图中用户操作的最佳方式是什么?

    我在 MVVM 中的理解是 View 知道 ViewModel ViewModel 知道 Model 但它不能向上工作 因此 Model 对 ViewModel 一无所知 并且 ViewModel 对 View 一无所知 So ViewMo
  • iOS8“现在”更改动态单元格的高度,重新内部单元格内容

    这是一个动态单元格 注意 在示例中 文本不是数据驱动的 它只是单元格本地的一些文本 例如 帮助文本 在运行时 使用单元格内实际的按钮将 UILabel 的 text 从一个单词更改为多行 iOS 完美地调整单元格和表格的大小 but 仅当单
  • 如何将静态古腾堡块转换为使用 PHP 注册的动态块?

    我正在尝试将我为 WordPress 创建的静态古腾堡块转换为动态块 我已经寻找其他解决方案 但没有成功 这个问题 将使用 wordpress create block 创建的静态 gutenberg 块转换为使用 PHP 注册的动态块的正
  • 什么是 Java 数据挖掘,JDM?

    我正在看JDM 这只是一个与其他进行实际数据挖掘的工具交互的 API 吗 或者这是一组包含实际数据挖掘算法的包 啊 奇迹互联网 http en wikipedia org wiki Java Data Mining Java 数据挖掘 JD
  • 在 Keycloak:18.x 中导入领域

    我无法将任何领域导入 Keycloak 18 0 0 那是 Quarkus 不再是 Wildfly 发行版 文档here https www keycloak org server importExport说它应该非常简单 通过将我导出的r
  • Bigtable CSV 导入

    我在多个文件 存储在存储桶中 中有一个大型 csv 数据集 gt 5TB 我需要将其导入到 Google Bigtable 中 这些文件的格式为 行键 s1 s2 s3 s4文本 整数 整数 整数 整数 hbase 有一个 importts
  • pgloader - 无法以用户“root”身份连接到“localhost”(端口 3306)的 mysql:发出条件 QMYND:MYSQL-UNSUPPORTED-AUTHENTICATION 信号

    我正在尝试将我的 Rails 应用程序从 mysql 迁移到 postgres 因为我们已经运行了应用程序 所以我使用 pgloader 将 mysql 数据移动到 postgres 数据库 但当我这样做时 pgloader mysql r
  • 如何从声纳中排除简单的 getter 和 setter?

    有的是way http skitch img s3 amazonaws com 20100903 ekunteuietuq9j394prku9d37t jpg从声纳报告中排除 getter 和 setter 假设我有 2 个 吸气剂 pub
  • Powershell 相当于 Linux true 命令

    This 堆栈溢出答案 https stackoverflow com questions 2175405 what is bin true解释 Linux 真正的命令是什么 我的问题是 Powershell v5 v6 是否也提供真正的命
  • 使内联 svg 填满整个屏幕

    我购买了一个 svg 图形 并将其导出为 svg 文件 以便可以在内联 HTML 中使用 我已将其插入我的文档的标签 但现在我希望它填充屏幕的全宽和全高 我尝试过设置宽度和高度属性
  • 如何在内部函数中重用参数?

    我有一个函数do something接收四个参数并调用内部函数get options do something lt function name amount manufacturer abc width 4 opts lt get opt
  • 有没有类型的逆运算?

    我得到了类型 但这与我正在寻找的类不同 typeof有逆运算吗 EDIT 我需要该类才能使用通用存储库 GenericRepository
  • plsql 输出/返回中的 CLOB 值(指定的 LOB 定位器无效:ORA-22275)

    我有存储的 plsql 过程 它从文件中获取大文本 create or replace procedure dbst load a file p file name in varchar2 l clob out clob as l bfil
  • 我应该如何将对象传递给子例程?

    这些方法之一是最好还是最差的方法 使用范围 my cache CHI gt new driver gt File expires in gt 3600 sub one if my data cache gt get key one sub
  • Dojo 对话框 onEnd() 动画异常

    我在动画序列期间遇到 Dojo Dijit Dialog hide 方法的问题 我正在使用带有 Tundra 主题的 Dojo 1 7 我的对话框中有一个取消按钮可以关闭对话框 var global welcome new Dialog i
  • 如何优化DataGridView的性能

    我的 Windows 应用程序窗体上有一个 DataGridView 控件 此 DataGridView 是基于纯文本文件 由用户在运行时指定 填充的 因此 列数和行数是动态计算的 现在一切都按预期工作正常 唯一的问题是我的 DataGri