求个dataSet 绑定到treeView控件的方法(asp) RT.本人不搞C#,也不知道其中的专业术语。我的意思是。我把xml里的数据转成dataset然后再把dataset里的数据以树的形式展现出来。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 /// <summary> /// 获取XML数据库中的数据的方法 /// </summary> /// <param name="strFilePath">传入文件路径</param> /// <returns>返回一个数据集</returns> public static DataSet GetAllDataFromXML(string strFilePath) { DataSet ds = new DataSet(); FileInfo fileInfo = new FileInfo(strFilePath); if (fileInfo.Exists) { try { ds.ReadXml(strFilePath); } catch { } } else { ds = null; } if (ds != null) { if (ds.Tables[0].Rows.Count < 1) ds = null; } return ds; } 楼主,,其实你要绑定树不一定要这样做,可以直接绑定的 private XmlDocument xml = new XmlDocument(); string path = AppDomain.CurrentDomain.BaseDirectory + @"NameList.xml"; xml.Load(path);//加载xml文件 bindTvXml(); /// <summary> /// 绑定TreeView /// </summary> private void bindTvXml() { for (int i = 0; i < xml.DocumentElement.ChildNodes.Count; i++) { XmlNode Xnode = xml.DocumentElement.ChildNodes[i]; TreeNode node = new TreeNode(); node.Text = Xnode.Attributes["name"].Value; node.Tag = Xnode; node.ImageIndex = 0; bindChildNode(node, Xnode);//绑定子节点 TvXml.Nodes.Add(node); TvXml.HideSelection = false; } } /// <summary> /// 递归绑定子节点 /// </summary> /// <param name="node"></param> /// <param name="xml"></param> private void bindChildNode(TreeNode node, XmlNode xml) { for (int i = 0; i < xml.ChildNodes.Count; i++) { TreeNode Childnode = new TreeNode(); XmlNode ChildXml = xml.ChildNodes[i]; Childnode.Text = ChildXml.Value; Childnode.Name = "1"; Childnode.Tag = xml.ChildNodes[i]; if (ChildXml.HasChildNodes) { if (ChildXml.ChildNodes[0].NodeType == XmlNodeType.Text) Childnode.Text = ChildXml.ChildNodes[0].InnerText; else bindChildNode(Childnode, ChildXml); Childnode.ImageIndex = 1; } node.Nodes.Add(Childnode); } } <?xml version="1.0" encoding = "gbk"?><rdf:RDF xml:base="nari" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cim="http://iec.ch/TC57/2003/CIM-schema-cim10#" xmlns:cimNARI="http://www.naritech.cn/CIM/ext-schema#"><cim:Company rdf:ID="c_1" > <cim:Naming.description>公司</cim:Naming.description> <cim:Naming.name>枣庄电网</cim:Naming.name></cim:Company><cim:SubControlArea rdf:ID="a_市中" > <cim:Naming.description>市中</cim:Naming.description> <cim:Naming.name>市中</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_峄城" > <cim:Naming.description>峄城</cim:Naming.description> <cim:Naming.name>峄城</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_山亭" > <cim:Naming.description>山亭</cim:Naming.description> <cim:Naming.name>山亭</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_台儿庄" > <cim:Naming.description>台儿庄</cim:Naming.description> <cim:Naming.name>台儿庄</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_薛城" > <cim:Naming.description>薛城</cim:Naming.description> <cim:Naming.name>薛城</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_滕州" > <cim:Naming.description>滕州</cim:Naming.description> <cim:Naming.name>滕州</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_地方电厂" > <cim:Naming.description>地方电厂</cim:Naming.description> <cim:Naming.name>地方电厂</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_大客户" > <cim:Naming.description>大客户</cim:Naming.description> <cim:Naming.name>大客户</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_统调电厂" > <cim:Naming.description>统调电厂</cim:Naming.description> <cim:Naming.name>统调电厂</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea><cim:SubControlArea rdf:ID="a_主网" > <cim:Naming.description>主网</cim:Naming.description> <cim:Naming.name>主网</cim:Naming.name> <cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" /></cim:SubControlArea></rdf:RDF>比如我这样的xml文件。我怎么去根据获取 cim:SubControlArea 这个节点的集合呢? 线程问题 c#搜索txt文件 关于 GDI 的问题 C#工作的请进入! 菜鸟发问-----datagrid选行问题!!!!!!! WebBrowser控件如何启用自动完成功能? C#打包部署加上注册表启动项后报错 dot NET安装问题--- 急!!!!! 如何实现类似VB6.0程序中的连接点事件? 大神來幫幫忙重繪checkbox 执行sql语句,不是反回的datatable和dataset吗, 触发a标签的onclick事件
/// <summary>
/// 获取XML数据库中的数据的方法
/// </summary>
/// <param name="strFilePath">传入文件路径</param>
/// <returns>返回一个数据集</returns>
public static DataSet GetAllDataFromXML(string strFilePath)
{
DataSet ds = new DataSet();
FileInfo fileInfo = new FileInfo(strFilePath);
if (fileInfo.Exists)
{
try
{
ds.ReadXml(strFilePath);
}
catch { }
}
else
{
ds = null;
}
if (ds != null)
{
if (ds.Tables[0].Rows.Count < 1)
ds = null;
}
return ds;
}
private XmlDocument xml = new XmlDocument();
string path = AppDomain.CurrentDomain.BaseDirectory + @"NameList.xml";
xml.Load(path);//加载xml文件
bindTvXml(); /// <summary>
/// 绑定TreeView
/// </summary>
private void bindTvXml()
{
for (int i = 0; i < xml.DocumentElement.ChildNodes.Count; i++)
{
XmlNode Xnode = xml.DocumentElement.ChildNodes[i];
TreeNode node = new TreeNode();
node.Text = Xnode.Attributes["name"].Value;
node.Tag = Xnode;
node.ImageIndex = 0;
bindChildNode(node, Xnode);//绑定子节点
TvXml.Nodes.Add(node);
TvXml.HideSelection = false;
}
} /// <summary>
/// 递归绑定子节点
/// </summary>
/// <param name="node"></param>
/// <param name="xml"></param>
private void bindChildNode(TreeNode node, XmlNode xml)
{
for (int i = 0; i < xml.ChildNodes.Count; i++)
{
TreeNode Childnode = new TreeNode();
XmlNode ChildXml = xml.ChildNodes[i];
Childnode.Text = ChildXml.Value;
Childnode.Name = "1";
Childnode.Tag = xml.ChildNodes[i];
if (ChildXml.HasChildNodes)
{
if (ChildXml.ChildNodes[0].NodeType == XmlNodeType.Text)
Childnode.Text = ChildXml.ChildNodes[0].InnerText;
else
bindChildNode(Childnode, ChildXml);
Childnode.ImageIndex = 1;
}
node.Nodes.Add(Childnode);
} }
<rdf:RDF xml:base="nari" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cim="http://iec.ch/TC57/2003/CIM-schema-cim10#" xmlns:cimNARI="http://www.naritech.cn/CIM/ext-schema#">
<cim:Company rdf:ID="c_1" >
<cim:Naming.description>公司</cim:Naming.description>
<cim:Naming.name>枣庄电网</cim:Naming.name>
</cim:Company>
<cim:SubControlArea rdf:ID="a_市中" >
<cim:Naming.description>市中</cim:Naming.description>
<cim:Naming.name>市中</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_峄城" >
<cim:Naming.description>峄城</cim:Naming.description>
<cim:Naming.name>峄城</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_山亭" >
<cim:Naming.description>山亭</cim:Naming.description>
<cim:Naming.name>山亭</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_台儿庄" >
<cim:Naming.description>台儿庄</cim:Naming.description>
<cim:Naming.name>台儿庄</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_薛城" >
<cim:Naming.description>薛城</cim:Naming.description>
<cim:Naming.name>薛城</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_滕州" >
<cim:Naming.description>滕州</cim:Naming.description>
<cim:Naming.name>滕州</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_地方电厂" >
<cim:Naming.description>地方电厂</cim:Naming.description>
<cim:Naming.name>地方电厂</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_大客户" >
<cim:Naming.description>大客户</cim:Naming.description>
<cim:Naming.name>大客户</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_统调电厂" >
<cim:Naming.description>统调电厂</cim:Naming.description>
<cim:Naming.name>统调电厂</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
<cim:SubControlArea rdf:ID="a_主网" >
<cim:Naming.description>主网</cim:Naming.description>
<cim:Naming.name>主网</cim:Naming.name>
<cim:PowerSystemResource.OperatedBy_Companies rdf:resource="#c_1" />
</cim:SubControlArea>
</rdf:RDF>
比如我这样的xml文件。我怎么去根据获取 cim:SubControlArea 这个节点的集合呢?