网络电视精灵

这篇文章的目的主要为了后续工作的使用,在这里对S2深入.NET平台和C#编程中贯穿案例《网络电视精灵》的部分实现代码进行思路剖析。

一.项目框架的搭建:

 网络电视精灵_第1张图片

这个界面需要的控件MenuStrip、TreeView、TabControl、ListView、DataGridView。

思路分析:

1.创建对应的类

 网络电视精灵_第2张图片

TvProgram:节目类

 

 //节目单的类
  public   class TvProgram
    {
      //节目播出的时间
        public DateTime  PlayTime { get; set; }
      //时段
        public String  Meridiem { get; set; }
      //节目的名称
        public string  ProgramName { get; set; }
      //视频的路径
        public string  Path { get; set; }
    }

 

该类主要负责定义节目的属性,为后续从xml文件中读取的内容提供存放位置。

ChannelBase:频道基类

 //频道类
  public  abstract class ChannelBase
    {
      //定义3个属性和一个方法
      //节目的类型
        public String  Type { get; set; }
      //名字
        public string  ChannelName { get; set; }
      //存放的路径
        public string  Path { get; set; }
      //提供一个用于保存该节目的所有集合
        public List<TvProgram> TvList { get; set; }
      //解析path对应的频道xml文件形成内存中的泛型
        public abstract void Fetch();
    }

  

TypeAChannelA类频道

 

 public  class TypeAChannel:ChannelBase
    {
        public override void Fetch()
        {
           
        }
    }

 

TypeBChannelB类频道

 

 public  class TypeBChannel:ChannelBase
    {
        public override void Fetch()
        {
          
        }
    }

 

ChannelFactory:工厂类

 //工厂类
    public class ChannelFactory
    {
        public static ChannelBase createChannel(string Type) 
        {
            ChannelBase channel = null;
            switch (Type)
	     {
        case"TypeA":
                 channel = new TypeAChannel();
        break;

        case "TypeB":
        channel = new TypeBChannel();
        break;
        
	   }
            return channel;
        }
    }

 未完待续。。请等待

 

  

 

 

  

 

 

你可能感兴趣的:(网络电视精灵)