XML在.net平台下的自定义控件的应用(4) <AttributeType name="linkurl" dt:type="string" required="yes"/> <AttributeType name="isparent" dt:type="string" required="yes"/> <atttibute type="id"/> <atttibute type="text"/> <atttibute type="linkurl"/> <atttibute type="isparent"/> <element name="menuitem" model="closed" minOccurs="0" maxOccurs="*" content="empty"/> </ElementType> <ElementType name="menuitem" model="closed" content="empty"> <AttributeType name="id" dt:type="string" required="yes"/> <AttributeType name="text" dt:type="string" required="yes"/> <atttibute type="id"/> <atttibute type="text"/> </ElementType> </Schema> 如果您对html比较熟悉的话,相信上面的代码即使是以前没有接触过也应该清楚了,在.xdr中,有两个对象,其一是元素,用前缀 ElementType 来定义,另外一个是该元素所对应的属性,用前缀atttibuteTpye,定义完这两个对象后,就是要将它们实例化,对应的前缀分别是Element 和atttibute,然后您就可以使用这两种已经实例化了的对象,就象使用html中<a>,<l>,<body>,<head>等标记一样。 为了更加清晰的说明上面的代码,我们这里举一个例子,相信读者一目了然: <menus xmlns='x-schema:Menu.xdr'> <menu id='menuBar1'> <topmenu id="xjtu" text="xjtu" isparent="true" linkurl="xjtu"></topmenu> <submenu id="sina" text="sina" isparent="false" linkurl="sina"></submenu> <topmenu id="sohu" text="sohu" isparent="false" linkurl="sohu"></topmenu> </menu></menus> 创建完xml文档后,就要在程序里面读取xml文档,这里如果采用微软的vs.net平台开发的话,建议可以使用XmlTextReader来读取相关信息,具体细节可以查阅MSDN。