WEB开发网
开发学院软件开发C语言 [C# 3.0 入门] [第一章 Lambda表达式] 第二节:La... 阅读

[C# 3.0 入门] [第一章 Lambda表达式] 第二节:Lambda表达式带来了什么

 2010-09-30 20:59:53 来源:WEB开发网   
核心提示: List 2 菜单项目数组实际上,当时认为这样就足够了,[C# 3.0 入门] [第一章 Lambda表达式] 第二节:Lambda表达式带来了什么(2),谁知中途又被要求加入一种菜单项,这种菜单项在19点以后才可以看到,通过检查被选择的菜单对象的FromHour的值,如果与现在时间相比小,如果

List 2 菜单项目数组

实际上,当时认为这样就足够了,谁知中途又被要求加入一种菜单项,这种菜单项在19点以后才可以看到。如果只有这一个的话,用if语句括起来判断一下例外条件就能够处理,可是要求是2个,而且还可能增加。于是,就想在这个表中添加条件语句。

最simple的解决方案,应该就是在MenuItem类里,保存“几点以后有效”的“几点”的整数值。

首先在MenuItemA类中,加上保存时间的整数字段“FromHour”。

 1public class MenuItemB
 2{
 3  public readonly string Name;
 4  public readonly SimpleMenuAction Action;
 5  public readonly int FromHour;
 6
 7  public MenuItemB(string name, SimpleMenuAction action, int fromHour)
 8  {
 9    Name = name;
10    Action = action;
11    FromHour = fromHour;
12  }
13}
14

List 3 加上时间字段的菜单项定义

菜单项数组也改写成以下:

1private static MenuItemB[] MenuItems2 =
2  {
3    new MenuItemB("选择项1", 执行方法, 0),
4    new MenuItemB("选择项2", 执行方法, 0),
5    new MenuItemB("选择项3", 执行方法, 0),
6    new MenuItemB("选择项4", 执行方法, 19),
7  };
8

List 4 对List 3的菜单项进行修正

这样,需要的信息都能够包含在数组里了。

构建菜单的方法是,通过检查被选择的菜单对象的FromHour的值,如果与现在时间相比小,就把该菜单项显示出来。

上一页  1 2 3 4  下一页

Tags:入门 第一章 Lambda

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接