我是Async的新手。我有一个Web服务返回我(在Windows Phone 8应用程序中)一些问题和DB的一些答案(2个功能)当调用GetQuestions函数时,我把问题放在一个ListBox和我想为每个问题返回一些ansewrs(GetAnswers方法),但我希望在listBox中像这样: 问题1 ANSWER1 ANSWER2 ... 问题2 ANSWER1 ANSWER2
下面的鳕鱼把我放在ListBox中 问题1 问题2 问题3 ANSWER1 ANSWER2 ...
如何停止GetQuestions方法并在Listbox答案中添加每个问题?
private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
ServiceReference1.Service1SoapClient client = new ServiceReference1.Service1SoapClient();
client.GetQuestionsCompleted += client_GetQuestionsCompleted;
client.GetQuestionsAsync(ID);
}
void client_GetQuestionsCompleted(object sender, ServiceReference1.GetQuestionsCompletedEventArgs e)
{
questions = e.Result.Cast<string>().ToList();
for(int i=0;i<questions.Count;i+=2)
{
Listbox1.Items.Add(questions[i]);
ServiceReference1.Service1SoapClient client2 = new ServiceReference1.Service1SoapClient();
client2.GetAnswersCompleted += client2_GetAnswersCompleted;
client2.GetAnswersAsync(questions[i]);
}
}
void client2_GetAnswersCompleted(object sender, ServiceReference1.GetAnswersCompletedEventArgs e)
{
answers = e.Result.Cast<string>().ToList();
for (int i = 1; i < answers.Count; i += 2)
Listbox1.Items.Add(answers[i]);
}