为什么在修改某一节点名称,并重新绑定该treeview后,界面上的treeview没有任何变化 ? 求一解.代码如下.每次重新绑定调用的方法 getTreeItemType()/// <summary>
/// 绑定树
/// </summary>
public void getTreeItemType()
{
treeViewItemType.BeginUpdate();
treeViewItemType.Nodes.Clear();
string sSql = "select ItemTypeID,ItemTypeName from [ItemType]";
TreeNode tn = new TreeNode();
tn.Text = "材料类别";
tn.Tag = string.Empty;
getNodes(tn, sSql, "0");
treeViewItemType.Nodes.Add(tn);
treeViewItemType.Nodes[0].Toggle();
treeViewItemType.EndUpdate();
} /// <summary>
/// 递归读取树结构
/// </summary>
/// <param name="node">TreeNode node</param>
/// <param name="sql">sql</param>
/// <param name="parentID">上级节点ID</param>
private void getNodes(TreeNode node,string sql, string parentID)
{
DataTable dt = DB.DBTable(sql + " where ParentID = " + Int32.Parse(parentID));
TreeNode tn;
foreach (DataRow row in dt.Rows)
{
tn = new TreeNode();
tn.Text = row["ItemTypeName"].ToString();
tn.Tag = row["ItemTypeID"].ToString();
getNodes(tn, sql, row["ItemTypeID"].ToString());
node.Nodes.Add(tn);
}
dt.Dispose();
}
/// 绑定树
/// </summary>
public void getTreeItemType()
{
treeViewItemType.BeginUpdate();
treeViewItemType.Nodes.Clear();
string sSql = "select ItemTypeID,ItemTypeName from [ItemType]";
TreeNode tn = new TreeNode();
tn.Text = "材料类别";
tn.Tag = string.Empty;
getNodes(tn, sSql, "0");
treeViewItemType.Nodes.Add(tn);
treeViewItemType.Nodes[0].Toggle();
treeViewItemType.EndUpdate();
} /// <summary>
/// 递归读取树结构
/// </summary>
/// <param name="node">TreeNode node</param>
/// <param name="sql">sql</param>
/// <param name="parentID">上级节点ID</param>
private void getNodes(TreeNode node,string sql, string parentID)
{
DataTable dt = DB.DBTable(sql + " where ParentID = " + Int32.Parse(parentID));
TreeNode tn;
foreach (DataRow row in dt.Rows)
{
tn = new TreeNode();
tn.Text = row["ItemTypeName"].ToString();
tn.Tag = row["ItemTypeID"].ToString();
getNodes(tn, sql, row["ItemTypeID"].ToString());
node.Nodes.Add(tn);
}
dt.Dispose();
}
解决方案 »
- 想在C#中实时监测剪贴板
- 怎么刷新内存中的表格
- 想做一个权限验证的通用工具,大家谈谈自己的看法
- 制作代码编辑器中,征集代码字体样式!100分!!!
- 我写了一个Addin,是在office2007下面开发的,如何兼容支持office2010?
- Dotfuscator混淆后,程序不能运行
- ******** 请问.bak文件(数据库备份文件)怎么弄到数据库里去?
- 如何实现treeview中单击节点标签表示选中,双击节点打开一个窗体,默认都是单击
- C#开发过程中如何设置程序的启动位置?
- 用c#调用其它程序的初始化问题?大虾及微软的专家帮个忙,谢谢!!!!!!
- dataGridview的问题??()
- 请问用C#能不能实现拦截IE的弹出窗口
http://blog.csdn.net/cnjack/archive/2007/07/23/1702419.aspx
==============修改后的值
一定要先插入到数据库..你要先看看数据库中存在不 ? 否则虽然重新绑定就会 无效了或者,你可以參考一下我寫的一個方法:
www.cnblogs.com/hjs1573