channelelement.cs

来自「自己做的一个浏览器~~大家请看看~如果合意给个彩头」· CS 代码 · 共 81 行

CS
81
字号
using System;
using System.Collections.Generic;
using System.Text;
using System.Xml;

namespace APLib.RSS
{
	public class ChannelElement : RSSCollectionNode
	{
		/// <summary>
		/// 频道标题
		/// </summary>
		private TitleElement title;
		/// <summary>
		/// 频道链接
		/// </summary>
		private LinkElement link;
		/// <summary>
		/// 频道描述
		/// </summary>
		private DescriptionElement description;
		/// <summary>
		/// 项目集合
		/// </summary>
		private ItemElement[] items;

		/// <summary>
		/// 获取频道标题
		/// </summary>
		public TitleElement Title { get { return title; } }
		/// <summary>
		/// 获取频道链接
		/// </summary>
		public LinkElement Link { get { return link; } }
		/// <summary>
		/// 获取频道描述
		/// </summary>
		public DescriptionElement Description { get { return description; } }
		/// <summary>
		/// 获取频道项目集合
		/// </summary>
		public ItemElement[] Items { get { return items; } }

		/// <summary>
		/// 频道元素名称
		/// </summary>
		public new const string Name = "channel";
		/// <summary>
		/// 获取元素名称
		/// </summary>
		/// <returns>元素名称</returns>
		public override string GetNodeName()
		{
			return Name;
		}

		#region IRSSNode Members

		public override XmlNode CreateXmlNode(XmlNode parent)
		{
			XmlNode node = parent.OwnerDocument.CreateElement(Name);
			CreateSubNode(node, this.title);
			CreateSubNode(node, this.link);
			if (items != null)
				foreach (ItemElement item in items)
					CreateSubNode(node, item);
			return node;
		}

		public override void Parse(XmlNode node)
		{
			this.title=CreateSubElement<TitleElement>(node, TitleElement.Name);
			this.link=CreateSubElement<LinkElement>(node, LinkElement.Name);
			this.description=CreateSubElement<DescriptionElement>(node, DescriptionElement.Name);
			this.items = CreateSubCollectionElement<ItemElement>(node, ItemElement.Name);
		}

		#endregion
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?