직렬 포트에서 데이터를 수신 한 다음 처리하여 listview
에 표시하는 C# Winforms 응용 프로그램이 있습니다.밀리 초 단위로 데이터를 수신하면 Winforms 응용 프로그램이 응답하지 않습니다.
100ms에서 데이터를받는 것이 좋지만 소스 전송률을 10 밀리 초로 변경하면 1 분 또는 2 분 후에 응용 프로그램이 중단됩니다.
세부 사항 :
응용 바이트의 데이터를 수신, 그래서리스트 뷰 컬럼에 ArrayList를에서 문자열, 저장, 변환하고 그것을 채우기 위해, 몇 가지 변환이 작업에 참여해야합니다
- 바이트를 문자열로 변환
- 정수로 변환하는 문자열이 거의 없습니다.
나는 또한 다음과 같습니다 일반 목록보기 코드를 사용하고 있습니다 :
ListViewItem item = new ListViewItem(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.ffff"));
item.SubItems.Add(hex1.ToString());
item.SubItems.Add(hex2.ToString());
.....
listView1.Items.Add(item);
그래서 내가 잘못 뭐죠 모르겠습니다.
listview
은 데이터가 전송되는 속도를 처리 할 수 없습니까?
응용 프로그램이 그 속도로 정지하는 이유는 무엇입니까?
'ListView.BeginUpdate()'및'ListView.EndUpdate()'가 작동하지 않는 것 같습니다. 아무런 업데이트가 없으면 listview는 아무 것도 표시하지 않습니다. – Liban