很多时候,我们都需要在另外一个线程中访问UI控件,而Windows Phone中的控件是非线程安全的。微软给我们提供了跨线程访问控件的方法。
Dispatcher.BeginInvoke(() => {
textBlock1.Text = "内容";
});
只需在代码中使用该方法便可以操作控件。
在代码中,看到一个很奇怪的东西。
()=>{}
这个其实就是lambda表达式, Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。
所有 Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。该 Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。Lambda 表达式 x => x * x 读作“x goes to x times x”。可以将此表达式分配给委托类型,如下所示:
delegate int del(int i);
del myDelegate = x => x * x;
int j = myDelegate(5); //j = 25
具体用法,搜索一下吧。这里只是简单的示例。