我有一个XML文件,它被加载到XMLDocument对象中。 XML文件有很多<旅游>节点。我想显示一个<的内容。旅游> Windows窗体上的节点,可以浏览<旅游>具有导航控件的节点。我怎样才能做到这一点?
我希望显示信息的表单看起来类似于:
以下是XML文件的示例:
<?xml version="1.0" ?>
<tours>
<tour>
<description>
<![CDATA[
<p><i>Travel Scotland!</i> goes south to England blah blah...</p>
]]>
</description>
<tour_name>The Lake District</tour_name>
<tour_photo>Lake.jpg</tour_photo>
<tour_guide>Mary Taylor</tour_guide>
<td_email>mailto:mtaylor@tscotland.com</td_email>
<tour_start>6/15/2003</tour_start>
<tour_end>6/19/2003</tour_end>
<itinerary>
<day>
<day_number>1</day_number>
<plan>London arrival</plan>
</day>
<day>
<day_number>2</day_number>
<plan>Train to Windemere</plan>
</day>
<day>
<day_number>3</day_number>
<plan>Second day in Windemere</plan>
</day>
<day>
<day_number>4</day_number>
<plan>Trip to Ambleside</plan>
</day>
<day>
<day_number>5</day_number>
<plan>Hiking tour to Grasmere</plan>
</day>
</itinerary>
</tour>
<tour> ANOTHER TOUR ETC.
答案 0 :(得分:0)
我不知道有关XMLDocument对象的细节,但是在伪代码术语中你需要这样做:
遍历您的<tour>
节点,并将信息加载到自定义结构的数组中。 e.g。
struct tour{
String description;
String tourname;
String tourimagelink;
...
}
然后,您需要遍历数组的每个元素,为每个条目创建Windows窗体控件(最好在停靠面板中等等,以便您可以滚动)。对于y轴偏移,您需要确定信息块的高度。如果使用for循环迭代元素,这样的公式可能会有所帮助:
y = (i*blockHeight) + offsetOfControl;
我希望这在某些方面有所帮助。
编辑:更好 - 您可以使用一个暴露所有Windows窗体控件的类,而不是使用结构,以便您可以将它们附加到主窗体。