最近因为写一个小工具,需要从Xml格式配置中读出数据,并动态生成菜单...因为是菜鸟,所以很费了点心思..本来着开放的精神,虽然只是一点小东西,但相信对新手还是有一点点帮助的.现拿出来和大家共享..
1、要求:从Xml文件中读出数据,并生成菜单,并在点击菜单时根据相关数据进行处理;
2、例子Xml和图片见后。
3、程序代码,及注释:
a)首先,从MenuItem派生一个DataMenuItem(即包含数据的菜单之意),因为Xml源文件里可能有很多数据需要保存,而MenuItem没有保存数据的地方
public class DataMenuItem:MenuItem
{
public string[] AttributeNames,AttributeValues;//保存该菜单的源Xml节点中的所有属性名称和值
public string Value;//该节点的值(值这种说法可能不太准确,应该是InnerText)
public string GetAttributeValueByName(string AttributeName)//为以后的程序取得属性值留的一个方法
{
if(AttributeNames==null||AttributeValues==null)return "";
if(AttributeNames.Length!=AttributeValues.Length)return "";
int i;
for(i=0;i<AttributeNames.Length;i++)
{
if(AttributeNames[i]==AttributeName)return AttributeValues[i];
}
return "";
}
}
b)然后是一个把Xml数据添加到菜单的方法,详细说明见注释
private