윈도우 폼 응용 프로그램에서 데이터 렌더링을 위해 datagridview를 사용하고 있습니다. 응용 프로그램이 실제로 많은 행을 가져오고 시스템이 멈추어 응답하지 않는 상태가됩니다. 그것은 일반적으로 100K + 행을 얻고 있습니다. 일반 C# 윈도우 폼 응용 프로그램이 데이터 그리드 뷰에서 쉽게로드 할 수있는 행 수일반 C# 윈도우 폼 응용 프로그램에서 DataGridview에서 쉽게로드 할 수있는 행 수
0
A
답변
2
하드 제한 사항을 알지 못합니다. 이는 응용 프로그램에 사용할 수있는 자원의 양과 같은 요인을 기반으로합니다. 많은 양의 데이터를 렌더링하는 경우 virutal 모드를 사용하는 것이 좋습니다. https://docs.microsoft.com/en-us/dotnet/framework/winforms/controls/implementing-virtual-mode-wf-datagridview-control
1
먼저 100k + 행을 가져 와서 모두 그리드에 표시하는 것이 좋지 않다고 생각합니다. 사용은 더 빠르고 효율적인 페이징을 사용할 수 있습니다. 데이터베이스의 트래픽 및 성능을 기반으로 한 번에 가져올 레코드 수를 제어 할 수 있습니다.
@pageNumber AS INT,
@rowsPerPage AS INT,
OFFSET((@PageNumber -1) * @RowsPerPage) ROWS
FETCH NEXT @RowsPerPage ROWS ONLY;
GO
이 글을 읽기 : 내가 응용 프로그램을 분석하고 DataGridView에 아무 문제가 없다는 것을 발견했다
https://10tec.com/articles/why-datagridview-slow.aspx
0
. 필요한 경우 100K 행을 포함 할 수 있습니다. 많은 시간이 걸리고 응용 프로그램이 응답하지 않는 상태로 데이터가로드되면 실행되는 다른 기능이 있습니다. 가상 모드 및 페이징 또한 좋은 옵션입니다. 그리고 저는 100K 줄이 사람이 처리하기에는 너무 많은 점에 동의합니다. 자원과 노력의 낭비뿐입니다. 나는 이해. 나는 실제로 다른 사람의 응용 프로그램을 개선하려고합니다. 감사합니다.
관련 문제
- 1. C# 윈도우 폼 응용 프로그램에서 button_click에 시간 간격을 설정하는 방법
- 2. 버튼을 클릭하여 윈도우 폼 응용 프로그램에서 음악을 재생하는 방법 C#
- 3. 어떻게 C# 윈도우 응용 프로그램에서
- 4. 윈도우 폼 응용 프로그램은
- 5. 윈도우 폼 응용 프로그램 예외
- 6. 휴대용 윈도우 폼 응용 프로그램
- 7. 어떻게 윈도우 폼 응용 프로그램에서 .exe 파일을 생성하는 응용 프로그램
- 8. 편집의 App.config C# 윈도우 폼
- 9. 윈도우 폼 자동 크기 C#
- 10. C# 응용 프로그램에서 여러 폼 처리
- 11. C# windows 폼 응용 프로그램에서 jQuery를로드하는 중
- 12. 범위 윈도우 폼 텍스트 상자 C# .net
- 13. C# 윈도우 폼 HTML 드롭 다운 메뉴처럼
- 14. DataGridView에서 행 속성을 제어 할 수 없습니다.
- 15. DataGridview에서 행 숨기기 (WinForms/C#)
- 16. 캡처 사업부 - 내 C# 윈도우 응용 프로그램에서 #
- 17. C# 윈도우 응용 프로그램에서 손으로 자르기를하는 방법?
- 18. 윈도우 폼 응용 프로그램의리스트 박스에 URL을 추가하십시오. C#
- 19. DataGridView에서 보이지 않는 행 제거
- 20. DataGridView에서 최대 행 수 설정?
- 21. 제목 표시 줄을 클릭하여 윈도우 폼 응용 프로그램에서 윈도우 최소화를 제한하는 방법
- 22. C# .net 윈도우 응용 프로그램에서 datagridview에서 한 셀의 셀 값을 다음 셀로 오버랩하는 방법
- 23. 여러 개의 DLL을 쉽게로드 할 수있는 NUnit 테스트 러너 GUI
- 24. 윈도우 폼 응용 프로그램 사용 HTML
- 25. 비트 맵으로 드래그 할 수있는 C++ 윈도우
- 26. C# 윈도우 폼 응용 프로그램에서 VLC 닷넷 폼에 seekbar를 추가하는 방법
- 27. DataGridView에서 행 선택
- 28. C# DataGridview에서 여러 행 선택 체크 박스로
- 29. DataGridview에서 단일 행 캡처
- 30. C#을 윈도우 폼 나는 윈폼 응용 프로그램을 프로그래밍하고있어
속도는 열의 수와 저장하는 데이터의 유형에 따라 달라질 수 있습니다. 또한 데이터를 렌더링하는 방법에 대한 정보도 없습니다. 아마 당신이 우리가 당신을 더 잘 도울 수있는 몇 가지 추가 정보를 제공하면. 당신은 일반적으로 100k 행과 함께 괜찮을 것입니다 ... – 0014
내가 믿는 UI 스레드에서 데이터를로드하고 있습니다. 백그라운드 작업자/별도의 스레드/비동기 작업에로드를 로딩하고 데이터가 완전히로드되면 UI 스레드와 DataGrid에 모두 동기화합니다. 이렇게하면 '응답이없는 상태'가 제거되지만 더 나은 해결책은 사용자가 거의 처리 할 수없는 방식으로 단일 그리드에서 100K + 레코드가 거의 필요하지 않으므로 논리를 다시 생각하는 것입니다. 한 번에 100K 개의 링크가있는 검색 엔진 응답을 어떻게보고 싶습니까? –
그것은 잘못된 질문입니다. 인간의 이익을위한 UI를 만들고 OS를 행복하게 만드는 것이 아닙니다. 따라서 실제 행은 "사용자가 합리적으로 처리 할 수있는 행 수"입니다. 약 50. 물론 perf 문제가 발생하지 않습니다. 무릎에 100,000 개의 행을 덤핑하면 아무도 보지 않는 완전히 사용할 수없는 UI가 생성되므로 고려할 가치가 없습니다. 영감을 얻으려는 백만 건의 검색어와 관련하여 Google이 조회수를 표시하는 방식을 살펴보십시오. –