내 응용 프로그램에는 DataGrid
이 들어있는 WPF 창이 있습니다. Window_Loaded
이벤트에서 서버에서 JSON 데이터를 가져와 deserialize 한 후 List<T>
으로 변환하면 데이터 그리드에 바인딩됩니다. 이런 식으로 모든 것이 잘 작동합니다.C# WPF에서 비동기 웹 요청을 만드는 방법
문제 :
그러나 코드의 요청 부분은 시간이 걸리고 어떤 요소가로드되지로 전체 창은 데이터 grid.I 우리가 보여 단지 AJAX와 같이 요청 부분의 비동기을 만들고 싶어 포함 흰색 보인다 무언가가로드되는 동안의 로더 이미지, 그리고로드되었을 때 내용을 보여주기 위해 콜백 함수 사용. 단계별로 단계
는
- 로드 창 및 요소 데이터 그리드 버튼 등 서버와 쇼
- 만들기 웹 요청의 데이터가로드 .. '레이블에서 가능.
- 데이터가로드되었음을 알리는 이벤트 나 다른 것을 실행 한 다음 데이터 그리드를 목록에 바인딩하여 응용 프로그램이 전체 웹 요청 부분 동안 응답 및 활성 상태를 유지하도록합니다. 여기
내가 this 링크를 발견
WebResponse response = req.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader sr = new StreamReader(responseStream, Encoding.UTF8);
string JSON = sr.ReadToEnd();
List<MyObject> returnedData = JsonConvert.DeserializeObject<List<MyObject>>(JSON);
Window_Loaded 이벤트 처리기에서 사용하고있는 현재의 비 비동기 코드입니다하지만 난 내 문제에 적용하는 방법을 모르겠습니다. 이 문제를 해결하는 방법에 대한 도움이나 아이디어는 언제나 환영합니다.
감사합니다. '디스패처' –