Windows Phone 8.1 将代码更改为异步任务
Windowphone 8.1 change code to async task
我想读取 XML 文件并将其数据绑定到列表框。
在第1页,点击按钮,进入第2页
在第 2 页中,来自 xml 文件的列表框绑定数据。
这是从 xml 文件获取数据的代码:
class GetData
{
public object obj_get_data(string xml_file)
{
XDocument xdoc = XDocument.Load(xml_file);
var list_emp = from query in xdoc.Descendants("emp")
select new du_lieu.thong_tin
{
Name = (string)query.Element("age"),
Age = (string)query.Element("age"),
};
return list_emp;
}
}
在第 2 页的 NavigationHelper_LoadState
我写了这段代码来绑定数据:
private void NavigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
GetData gd = new GetData();
object obj = gd.obj_get_data(xml_danh_sach);
listbox1.ItemsSource = obj;
}
有了这段代码,一切就OK了,
但是,当点击 page1 上的按钮时,应用会延迟几秒钟才能转到 page2。
我知道我需要使用异步任务来处理这个问题并进行 bar/ring 来制作应用程序
像平常一样,
但我不知道该怎么做。
大家能帮帮我吗?
试试这个:
class GetData
{
public async Task<object> obj_get_data(string xml_file)
{
XDocument xdoc = await XDocument.Load(xml_file);
var list_emp = from query in xdoc.Descendants("emp")
select new du_lieu.thong_tin
{
Name = (string)query.Element("age"),
Age = (string)query.Element("age"),
};
return list_emp;
}
}
还有这个:
private async Task NavigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
GetData gd = new GetData();
object obj = await gd.obj_get_data(xml_danh_sach);
listbox1.ItemsSource = obj;
}
我想读取 XML 文件并将其数据绑定到列表框。
在第1页,点击按钮,进入第2页
在第 2 页中,来自 xml 文件的列表框绑定数据。
这是从 xml 文件获取数据的代码:
class GetData
{
public object obj_get_data(string xml_file)
{
XDocument xdoc = XDocument.Load(xml_file);
var list_emp = from query in xdoc.Descendants("emp")
select new du_lieu.thong_tin
{
Name = (string)query.Element("age"),
Age = (string)query.Element("age"),
};
return list_emp;
}
}
在第 2 页的 NavigationHelper_LoadState
我写了这段代码来绑定数据:
private void NavigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
GetData gd = new GetData();
object obj = gd.obj_get_data(xml_danh_sach);
listbox1.ItemsSource = obj;
}
有了这段代码,一切就OK了, 但是,当点击 page1 上的按钮时,应用会延迟几秒钟才能转到 page2。
我知道我需要使用异步任务来处理这个问题并进行 bar/ring 来制作应用程序 像平常一样, 但我不知道该怎么做。 大家能帮帮我吗?
试试这个:
class GetData
{
public async Task<object> obj_get_data(string xml_file)
{
XDocument xdoc = await XDocument.Load(xml_file);
var list_emp = from query in xdoc.Descendants("emp")
select new du_lieu.thong_tin
{
Name = (string)query.Element("age"),
Age = (string)query.Element("age"),
};
return list_emp;
}
}
还有这个:
private async Task NavigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
GetData gd = new GetData();
object obj = await gd.obj_get_data(xml_danh_sach);
listbox1.ItemsSource = obj;
}