利用TreeView控件动态生成无限级树(续:通过绑定动态xml文件)
2006-08-09 11:49
609 查看
在上一篇
利用TreeView控件动态生成无限级树
中提到的那个动态生成XML文件进行绑定的办法
今天也被我实现了
把生成XML文件的代码单独放到一个页面中,比如说叫GetXml.aspx页中去
然后指定
TreeView2.TreeNodeSrc = "GetXml.aspx";
而这个GetXml.aspx.cs中的代码如下
private void SendXml()
{
//Create Xml File
XmlDocument objXmlDoc = new XmlDocument();
//Insert Xml Declaration
XmlDeclaration objXmlDeclare = objXmlDoc.CreateXmlDeclaration("1.0", "UTF-8", "yes");
objXmlDoc.InsertBefore(objXmlDeclare, objXmlDoc.DocumentElement);
XmlElement objRootElem = objXmlDoc.CreateElement("TREENODES");
objXmlDoc.AppendChild(objRootElem);
CreateXml(objXmlDoc, objRootElem, 0);
System.Xml.XmlTextWriter xmlwriter = new System.Xml.XmlTextWriter(Response.OutputStream,Response.ContentEncoding);
xmlwriter.Formatting = Formatting.Indented;
xmlwriter.Indentation = 4;
xmlwriter.IndentChar = ' ';
objXmlDoc.WriteTo(xmlwriter);
xmlwriter.Flush();
Response.End();
xmlwriter.Close();
}
private void CreateXml(XmlDocument objXMLDoc, XmlElement objRootElem, int belong)
{
//Get DataSet
DataSet ds = new DataSet();
foreach(DataRow dr in ds.Tables[0].Rows)
be73
{
//Create ChildNode TreeNode
XmlElement objXmlElem = objXMLDoc.CreateElement("TREENODE");
objRootElem.AppendChild(objXmlElem);
//Create Attributes Text
XmlAttribute objXmlAttText = objXMLDoc.CreateAttribute("Text");
objXmlAttText.Value = dr["text"].ToString().Trim();
objXmlElem.SetAttributeNode(objXmlAttText);
//Create Attributes CheckBox
XmlAttribute objXmlAttCB = objXMLDoc.CreateAttribute("CheckBox");
objXmlAttCB.Value = "True";
objXmlElem.SetAttributeNode(objXmlAttCB);
//Create Attributes Expanded
XmlAttribute objXmlAttExp = objXMLDoc.CreateAttribute("Expanded");
objXmlAttExp.Value = "True";
objXmlElem.SetAttributeNode(objXmlAttExp);
int id = int.Parse(dr["id"].ToString().Trim());
CreateXml(objXMLDoc, objXmlElem, id);
}
}
函数的递归思想用的仍然是上一篇中的同样的思想
这里把生成的objXMLdoc文件用XmlTextWriter写入到一个Xml流中
然后利用xmlwriter.Flush()的方式进行输出
这样就可以得到这个Xml文件了
在PageLoad函数里调用这个SendXml()方法即可
private void Page_Load(object sender, System.EventArgs e)
{
BindXmlTree();
}
posted on 2004-10-29 19:04 流浪的狗 阅读(2746) 评论(5) 编辑 收藏 引用 收藏至365Key 所属分类: Dotnet C#
相关文章推荐
- 利用TreeView控件动态生成无限级树(续:通过绑定动态xml文件)
- 利用TreeView控件动态生成无限级树(续:通过绑定动态xml文件)(转)
- 利用.net 2.0中的TreeView控件与数据库绑定,生成无限级的树目录
- 利用TreeView控件动态生成无限级树
- 利用.net 2.0中的TreeView控件与数据库绑定,生成无限级的树目录
- 利用TreeView控件动态生成无限级树(转)
- 利用TreeView控件动态生成无限级树(转)
- [网络收集]读取XML 利用TreeView控件动态生成无限级树
- 利用TreeView控件动态生成无限级树
- dwz 通过js 动态生成的查找找回按钮需要手动绑定lookup() 方法
- 利用TreeView控件动态生成无限极树形结构(转为了明天)
- VS2005利用TreeView控件和递归函数动态生成树状菜单
- VS2005利用TreeView控件和递归函数从数据库动态生成树状菜单
- 利用TreeView控件动态生成无限级树
- datalist通过2次绑定生成动态表格
- 利用TreeView控件动态生成无限级树
- 稳扎稳打Silverlight(65) - 5.0绑定之通过 ICustomTypeProvider 绑定动态生成的属性
- 通过C#动态生成图书信息XML文件
- 通过读取properties文件动态生成对数据库的连接