Atu*_*oel 0 c# windows-phone-8
1:有人可以向我解释第一个功能的最后一行吗?
2:第二个功能不起作用.请告诉我原因.PHP脚本正在获取数据.
我编辑了代码以获得此功能,但现在应用程序崩溃了一个System nullreferenceexception.请帮忙.
private void checkbutton_Click(object sender, RoutedEventArgs e)
{
statustext.Text = "Checking for new score";
var webclient = new WebClient();
webclient.OpenReadCompleted += new OpenReadCompletedEventHandler(getscores_OpenReadCompleted);
webclient.OpenReadAsync(new Uri("http://example.com/get.php?"+DateTime.Now));
}
void getscores_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
StreamReader s = null;
Stream reply=null;
try
{
reply = (Stream)e.Result;
s = new StreamReader(reply);
}
catch
{
statustext.Text = "ERROR IN FETCHING";
}
scorebox.Text = s.ReadToEnd();
statustext.Text = "DoNE";
}
Run Code Online (Sandbox Code Playgroud)
第一种方法的最后一行是将处理程序附加到事件.它说当OpenReadCompleted事件触发时,也就是说当读取完成时,getscores_OpenReadCompleted应该调用该方法.
这getscores_OpenReadCompleted不起作用,因为它试图从非UI线程访问UI元素.
你还加入了处理程序启动异步操作后,因此,虽然它是不可能的,这是绝对有可能在操作完成非常迅速,在添加处理程序之前的事件.虽然这种情况非常不寻常,但只需在启动异步操作之前添加处理程序即可快速轻松地修复它.
| 归档时间: |
|
| 查看次数: |
97 次 |
| 最近记录: |