我正在編寫ac#實用程序,該實用程序需要過濾和顯示大文本文件(大小超過100MB)。該實用程序以只讀模式打開文本文件,應允許滾動瀏覽文本,跳轉到特定的行號,搜索文本模式并根據用戶定義的過濾器僅顯示特定的行。我希望我的實用程序在按下“加載”按鈕后立即為用戶提供對文件的訪問權限,這是我遇到的問題:我能夠解決將文本文件快速讀入DataTable的問題,但是,當我想在DataGridView中顯示文本文件時,加載時間太長了。我正在使用DataGridView,因為我需要在文本的每一行附近顯示其他列。我在網上可以找到的唯一建議是每次僅顯示文件的一部分。這個解決方案聽起來很適合我的需求,但是會引起一些問題:加載文件后不久,用戶將希望開始執行以下操作:移至特定行,搜索文本或進行過濾,因此,將文件異步加載到DataGridView中可能不是解決我問題的最佳解決方案。其他解決方案建議加載文件的前N行和文件的后M行,并在用戶滾動時添加缺少的行。在這里,我在將DataGridView中的行號映射到DataTable中的行號時遇到了問題:如果我滾動到末尾然后開始向上滾動,或者只是跳轉到特定的行號,我怎么知道哪些行已經被已加載,哪些還沒有?以前有沒有人解決過這樣的問題?
- 1 回答
- 0 關注
- 266 瀏覽
添加回答
舉報
0/150
提交
取消