1
Windows Phone 7アプリケーションで完了メソッドと非同期メソッドを使用する際に問題があります。完了し、非同期メソッドをWindows Phone 7アプリケーション
私のコードはここにある:
private void messageClient_getMessageOfUserCompleted(object sender, ADRTRYST_CLIENT.LocalHostMessageService.getMessageOfUserCompletedEventArgs e)
{
//lstBxMessages.ItemsSource = e.Result;
System.Collections.ObjectModel.ObservableCollection<ADRTRYST_CLIENT.LocalHostMessageService.OBJMessage> mesList = e.Result;
foreach (ADRTRYST_CLIENT.LocalHostMessageService.OBJMessage mes in mesList)
{
MessageObj message = new MessageObj();
message.Date = mes.MessageDate;
messageList.Add(message);
ADRTRYST_CLIENT.LocalHostMemberShipService.MemberShipSoapClient memClient = new ADRTRYST_CLIENT.LocalHostMemberShipService.MemberShipSoapClient();
MessageBox.Show(memClient.State.ToString());
memClient.GetUserByUserIdCompleted += new EventHandler<ADRTRYST_CLIENT.LocalHostMemberShipService.GetUserByUserIdCompletedEventArgs>(memClient_GetUserByUserIdCompleted);
memClient.GetUserByUserIdAsync(mes.SenderUserID);
lstBxMessages.Items.Add(mes.MessageDate);
}
}
private void memClient_GetUserByUserIdCompleted(object sender, ADRTRYST_CLIENT.LocalHostMemberShipService.GetUserByUserIdCompletedEventArgs e)
{
ADRTRYST_CLIENT.LocalHostMemberShipService.OBJPerson user = e.Result;
if (user != null)
lstBxMessages.Items.Add(user.UserName);
}
私は、リストボックスでのメッセージの送信者をメッセージの日付を見ていることを期待しています。 ただし、最初にすべての日付がリストされ、送信者名がリストボックスにリストされます。 この問題を解決するにはどうすればよいですか?
。タイムアウト例外は、GetUserByUserIdメソッドで未処理です。 – user1285383