treeview添加、删除节点后不刷新,急~~~~~~~~搞了一天都没搞出来
Abcsj 2008-07-18 08:50:26 treeview绑定到一个XML文件,
在页面上有一个textbox、添加按钮、删除按钮(在节点上选择了checkbox进行的)
但是我点击添加按钮或删除的时候,treeview有时没有重新绑定,
得点击两次添加或删除treeview才重新绑定,(但是有时一次就可以),下面是代码:
帮我看看哪里出问题
protected void Page_Load(object sender, EventArgs e)
{
Response.Expires = 0;
if (!IsPostBack)
{
ReaderXmlData();
TreeBind();
}
}
protected void btnAdd_Click(object sender, EventArgs e)
{
if (tvnode.CheckedNodes.Count > 0) //对选中checkbox节点添加
{
foreach (TreeNode tn in tvnode.CheckedNodes)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("~/xml/" + stranalysisid + ".xml"));
StringBuilder XPathStr = new StringBuilder("");
XmlNode node = xmlDoc.SelectSingleNode(tn.ValuePath.Replace("大盘分析如下:", "root"));
XmlElement xesub1 = xmlDoc.CreateElement((tbnode.Text));
((XmlElement)node).AppendChild(xesub1);//添加节点
xmlDoc.Save(Server.MapPath("~/xml/" + stranalysisid + ".xml"));//这时调试的时候XML文件已经改变,但是页面显示的时候并没有刷新 tbnode.Text = "";
}
}
}
TreeBind();
}
private void TreeBind()
{
string strxm_name = "~/xml/"+stranalysisid+".xml";//是以根节点来命名的XML
XmlDataSource1.DataFile = strxm_name;
tvnode.DataSource = XmlDataSource1;
tvnode.DataBind();
XmlDataSource1.EnableCaching=false;
CheckTree(tvnode.Nodes[0]);
}