c# treeview控件节点数据转为xml文档(借鉴了别人的想法) treeviewxml递归存储c# 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我要是删除节点(tag1)就是要彻底删除,在树中节点tag1都删除了,包括元素的属性,只保存其余节点。第一张图是正确格式,第二张图格式就乱了。 http://blog.csdn.net/happy09li/article/details/7460521 大神 能帮我解释下不 private void getXmlInfo() // { DataSet myds = new DataSet(); myds.ReadXml(strPath); dataGridView1.DataSource = myds.Tables[0]; }//这段代码是绑定到datagridview中 ,和DataTable操作区别是什么呢 dataset和datatable没有本质区别...只不过dataset是datatable的集合而已.. xml文件节点绑定到Treeview中private XmlDocument NexusDocument = new XmlDataDocument();//定义一个XML文档对象 private void BindingXML_Load(object sender, EventArgs e) { string filePath = "NexusPoint.xml";//定义一个变量保存XML文件的路径 if(File.Exists(filePath))//当在指定路径下存在该文件时 { NexusDocument.Load(filePath);//加载该路径下的XML文件 RecursionTreeControl(NexusDocument.DocumentElement,treeView1.Nodes);//将加载完成的XML文件显示在TreeView控件中 treeView1.ExpandAll();//展开TreeView控件中的所有项 } } /// <summary> /// RecursionTreeControl:表示将XML文件的内容显示在TreeView控件中 /// </summary> /// <param name="xmlNode">将要加载的XML文件中的节点元素</param> /// <param name="nodes">将要加载的XML文件中的节点集合</param> private void RecursionTreeControl(XmlNode xmlNode,TreeNodeCollection nodes) { foreach(XmlNode node in xmlNode.ChildNodes)//循环遍历当前元素的子元素集合 { string temp = (node.Value != null ? node.Value : (node.Attributes != null && node.Attributes.Count > 0) ? node.Attributes[0].Value : node.Name);//表示TreeNode节点的文本内容 TreeNode new_child = new TreeNode(temp);//定义一个TreeNode节点对象 nodes.Add(new_child);//向当前TreeNodeCollection集合中添加当前节点 RecursionTreeControl(node,new_child.Nodes);//调用本方法进行递归 } } c#05 制作webForm安装包,设置其启动页 在vs2008里边有没有像打开“我的电脑”左边那种可以收放的菜单控件啊? 怎么获取qq对话窗体里输入框的句柄 如何做到如同vs2005中利用服务器资源管理器连接的数据库打中开表数据那样 水晶报表打印 控件遍历的问题,如何动态获取timer的个数 在多线程中执行dataGrid的奇怪问题! 在开放平台上提供的是WEB服务? 关于Socket通讯的问题,一端用便c编,一端用便c#编,问应注意什么问题,请高手指正 自定义字符串的问题 请问如何才能将模型显示出来(C#+CSGL读取obj模型) 关于全局快捷键的问题,模拟键盘自动击键
private void getXmlInfo() //
{
DataSet myds = new DataSet();
myds.ReadXml(strPath);
dataGridView1.DataSource = myds.Tables[0];
}
//这段代码是绑定到datagridview中 ,和DataTable操作区别是什么呢
private XmlDocument NexusDocument = new XmlDataDocument();//定义一个XML文档对象
private void BindingXML_Load(object sender, EventArgs e)
{
string filePath = "NexusPoint.xml";//定义一个变量保存XML文件的路径
if(File.Exists(filePath))//当在指定路径下存在该文件时
{
NexusDocument.Load(filePath);//加载该路径下的XML文件
RecursionTreeControl(NexusDocument.DocumentElement,treeView1.Nodes);//将加载完成的XML文件显示在TreeView控件中
treeView1.ExpandAll();//展开TreeView控件中的所有项
}
}
/// <summary>
/// RecursionTreeControl:表示将XML文件的内容显示在TreeView控件中
/// </summary>
/// <param name="xmlNode">将要加载的XML文件中的节点元素</param>
/// <param name="nodes">将要加载的XML文件中的节点集合</param>
private void RecursionTreeControl(XmlNode xmlNode,TreeNodeCollection nodes)
{
foreach(XmlNode node in xmlNode.ChildNodes)//循环遍历当前元素的子元素集合
{
string temp = (node.Value != null ? node.Value : (node.Attributes != null && node.Attributes.Count > 0) ? node.Attributes[0].Value : node.Name);//表示TreeNode节点的文本内容
TreeNode new_child = new TreeNode(temp);//定义一个TreeNode节点对象
nodes.Add(new_child);//向当前TreeNodeCollection集合中添加当前节点
RecursionTreeControl(node,new_child.Nodes);//调用本方法进行递归
}
}