灭顶之灾之网络电视精灵——S2 2.8

从前,有一个神奇的东西叫做搞搞精灵
关于他,有一段历史。
哎呀!我去!写不下去了。
-。-以上玩笑

首先需求分析
TreeView显示两种频道 TypeA和TypeB
所以创建三个类 ChannelBase TypeA TypeB
然后每个频道有节目单
节目单也因频道不同而不同 分为两种
所以也是三个类
Programme ProgramA ProgramB

新建一个ChannelBase对象的list集合

load事件

判断快捷菜单用

判断然后给DataGridView设置数据源
频道父类:

A子类
B子类
节目父类

public class ChannelManager
{
public void Resolve(List<ChannelBase> list)
{
XmlDocument doc = new XmlDocument();
doc.Load("files/FullChannels.xml");
XmlNode root = doc.DocumentElement;
foreach (XmlNode item in root.ChildNodes)
{
if (item["channelType"].InnerText.Equals("TypeA"))
{
TypeA channel = new TypeA();
channel.Type = item["channelType"].InnerText;
channel.ChannelName = item["tvChannel"].InnerText;
channel.Path = item["path"].InnerText; List<ProgramA> proList = new List<ProgramA>();
XmlDocument doc2 = new XmlDocument();
doc2.Load(item["path"].InnerText);
XmlNode node = doc2.DocumentElement;
foreach (XmlNode key in node.ChildNodes[])
{
ProgramA p = new ProgramA();
p.Time = Convert.ToDateTime(key["playTime"].InnerText);
p.Meridien = key["meridien"].InnerText;
p.Name = key["programName"].InnerText;
p.Path = key["path"].InnerText; proList.Add(p);
}
channel.List = proList;
list.Add(channel);
}
else
{
TypeB channel = new TypeB();
channel.Type = item["channelType"].InnerText;
channel.ChannelName = item["tvChannel"].InnerText;
channel.Path = item["path"].InnerText; List<ProgramB> proList = new List<ProgramB>();
XmlDocument doc2 = new XmlDocument();
doc2.Load(item["path"].InnerText);
XmlNode node = doc2.DocumentElement;
foreach (XmlNode key in node.ChildNodes[])
{
ProgramB p = new ProgramB();
p.Time = Convert.ToDateTime(key["playTime"].InnerText);
p.Name = key["name"].InnerText;
p.Path = key["path"].InnerText; proList.Add(p);
}
channel.List = proList;
list.Add(channel);
} }
}
}
最后 核心的代码
然后 完成


灭顶之灾之网络电视精灵——S2 2.8的更多相关文章
- 网络电视精灵~分析~~~~~~简单工厂模式,继承和多态,解析XML文档,视频项目
小总结: 所用技术: 01.C/S架构,数据存储在XML文件中 02.简单工厂模式 03.继承和多态 04.解析XML文档技术 05.深入剖析内存中数据的走向 06.TreeView控件的使用 核心: ...
- 初识XML及简单工厂运用--网络电视精灵
网络电视精灵 任务描述 1. 解析XML文件中的数据 三个简单的xml文件; <?xml version="1.0" encoding="utf-8" ? ...
- 继承,多态,集合,面向对象,XML文件解析,TreeView动态加载综合练习----->网络电视精灵项目练习、分析
网络电视精灵 项目运行状态如图: 项目完成后的类: 首先,将程序分为二部分进行: 一:TreeView节点内容的设计及编写: 1.1遍写XML文件:管理(FullChannels.xml),A类电视台 ...
- S2---深入.NET平台和C#编程的完美总结
1.NET简单解说 l 面向对象提升 OOP(Object Oriented Programming)面向对象编程 AOP:(Aspache Oriented Programming):面向切面编 ...
- .NET平台和C#编程的总结
第一章 简单认识.NET框架 (1)首先我们得知道 .NET框架具有两个主要组件:公共语言进行时CLR(Common Language Runtime)和框架类库FCL(Framework ...
- 深入.NET平台和C#编程总结大全
对于初学者的你,等到你把这个看完之后就更清楚地认知.NET和C#编程了,好了废话不多说,开始吧! ...
- 一个年轻的码农的一个C#项目
话不多少,今天要写一个小项目.我们写项目要做好准备.我们要做项目分析.要知道用户需求,然后在根据需求来规划自己的项目.我们要用自己所学,做最好的程序.尽自己所能完成项目需求.精简代码! 我们今天要写的 ...
- 第八章xml学习
1.ASP.NET和JSP的关系 ASP.NET 和JSP都是用来开发动态网站的技术,只不过ASP.NET是通过c#语言来操作的, 而JSP是通过Java语言来操作的. 2.为什么学习XML? 01. ...
- 2DToolkit官方文档中文版打地鼠教程(三):Sprite Collections 精灵集合
这是2DToolkit官方文档中 Whack a Mole 打地鼠教程的译文,为了减少文中过多重复操作的翻译,以及一些无必要的句子,这里我假设你有Unity的基础知识(例如了解如何新建Sprite等) ...
随机推荐
- Logistic回归原理及公式推导[转]
原文见 http://blog.csdn.net/acdreamers/article/details/27365941 Logistic回归为概率型非线性回归模型,是研究二分类观察结果与一些影响因素 ...
- 数据库之mysql存储程序
什么时候会用到存储过程 1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度2.当对数据库进行复杂操作时 ...
- Centreon插件nagvis
======================================= http://docs.nagvis.org/1.8/en_US/index.html https://document ...
- osip结构体
/** * Structure for SIP Message (REQUEST and RESPONSE). * @struct osip_message */ struct osip_messa ...
- pt-online-schema-change 实例
pt-pmp (http://www.cnblogs.com/ivictor/p/6012183.html) pt-online-schema-change (http://blog.csdn.net ...
- jquery 复制DIV与相关事件
<div class="pages_img fix" name="fixpages"> <div class=& ...
- <<有效软件测试>> 读书笔记和自己的一些思考
需求阶段 1. 测试人员及早介入,需要彻底了解产品,设计测试过程 * 及早介入,可以了解在开发的过程中需要使用哪些新技术,新的平台, 测试组是否方便进行测试,是否方便进行自动化测试,早期开发和测试应该 ...
- 【freemaker】之获取xml的值
测试代码 @Test public void test09() throws Exception{ root.put("doc", NodeModel.parse(new Inpu ...
- a+=b 是什么意思?
a+=b或者-=,*=等等就是相当于a=a+b;简写而已,没什么特殊含义此外还有a++/a--相当于a=a+1/a=a-1
- JSON库之性能比较:JSON.simple VS GSON VS Jackson VS JSONP
从http://www.open-open.com/lib/view/open1434377191317.html 转载 Java中哪个JSON库的解析速度是最快的? JSON已经成为当前服务器与WE ...