这两句代码如何也看懂,请进
这两句代码怎么也看懂,请进C# codeObservableCollectionUserControl Functions new ObservableCollect
这两句代码怎么也看懂,请进
C# codeObservableCollection<UserControl> Functions = new ObservableCollection<UserControl>();var ctls = Functions.Where(u => u.GetType().FullName == ucName);
这里的u => u.GetType().FullName == ucName是什么意思呢,“=>”符号是什么意思呢
小弟看半天也没有琢磨明白,劳烦大家帮我解答下。
[解决办法]“=>”是C#的Lambda表达式。
MSDN的解释如下:
“Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。
所有 Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。该 Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。Lambda 表达式 x => x * x 读作“x goes to x times x”。可以将此表达式分配给委托类型.
[解决办法]ObservableCollection<UserControl> Functions = new ObservableCollection<UserControl>();
var ctls = Functions.Where(u => u.GetType().FullName == ucName);
u相当于是一个UserControl的实例
第二句的意思是查出Functions实体集合内的所有实体的FullName等于ucName的实体
[解决办法][解决办法]u本身并不是什么的缩写,更多的只是为了表示一个集合,用o、a等字母也可以
[解决办法]有大神已经回复,我是来拜读的。
LZ可以结贴了。