求大神们帮忙写一个程序,我是超级C#菜鸟 我正在winform界面做一个treeview树形表单维护,但是表中没有父节点ID,和正常的ID编号,要求通过名称对应的编码以及对应的层级,进行树形显示,然后点击其中一个节点,可以在我右侧设置的框中,显示其名称和编码以及它的上一级名称和编码,谢谢大家费心,如果答案被采用,肯定多多加分 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 生成树形结构http://www.baidu.com/link?url=fe86d255ba3a32124973f36af092e980d0fe89912a47a3a734d283caf0d248127648b7fd75d6a29b34e0498f7cf2cb0e59ff5856e828c2b3af1eedf04d024b568c297cde85fabec8f5647cfcc5e4da0051471d002e868f12f63d1045b0adcc70c8095f7c101cdfcde128dce7835f70d8点击不就是节点切换吗,treeview提供了事件,自己看帮助 //ParentNode TreeNode tn = new TreeNode(); tn.Name = null; tn.Text = "All Classes"; tvclass.Nodes.Add(tn);//ChildNode TreeNode tnclass = new TreeNode(); tnclass.Name = ""; tnclass.Text = ""; tn.Nodes.Add(tnclass);/// <summary>/// NodeSelectedChanged/// </summary>/// <param name="sender"></param>/// <param name="e"></param>void tvclass_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { string selectednode=e.Node.Name; DoWhatYouWant(selectednode) } 这是通过对象绑定的,,稍微改下 private void bindTvType() { category[] cats = DBhelper.getAllCategory(); if (cats != null) { foreach (category item in cats) { TreeNode node = new TreeNode(); if (!item.parentIdSpecified) { node.Text = item.name; node.Tag = item.id; node.Name = item.id + ""; bindChild(cats, node); tvType.Nodes.Add(node); } } } tvType.HideSelection = false; } private void bindChild(category[] cats, TreeNode tn) { foreach (category item in cats) { TreeNode node = new TreeNode(); if (item.parentId == int.Parse(tn.Name)) { node.Text = item.name; node.Tag = item; node.Name = item.id + ""; tn.Nodes.Add(node); bindChild(cats, node); } } } http://blog.csdn.net/xianfajushi/article/details/7756584 c# socket 异步 问题!!!!!!!!!! PrintPreviewDialog预览时候点击左上角“打印”按钮,为什么只打印当前页? 关于获取和设置环境变量的问题 IList对象的变量用什么方式访问? 免费发布 学生宿舍管理系统 ;献给新手的礼物! 一段特简单的通过短信接口发送短信代码 当 dbgrid 的DataMember是一个关系时,如何根据指定值定位当前行? 在C#中如何实现格式日期功能??????? 求助C#中WinFrom中调用TreeView控件的问题,急急急!!!! 在asp.net web中 谁能告诉我怎样关掉屏幕键盘? 急~请各位大大帮忙看看这个问题,在线等!
点击不就是节点切换吗,treeview提供了事件,自己看帮助
//ParentNode
TreeNode tn = new TreeNode();
tn.Name = null;
tn.Text = "All Classes";
tvclass.Nodes.Add(tn);
//ChildNode
TreeNode tnclass = new TreeNode();
tnclass.Name = "";
tnclass.Text = "";
tn.Nodes.Add(tnclass);
/// <summary>
/// NodeSelectedChanged
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void tvclass_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
string selectednode=e.Node.Name;
DoWhatYouWant(selectednode)
}
private void bindTvType()
{
category[] cats = DBhelper.getAllCategory();
if (cats != null)
{ foreach (category item in cats)
{
TreeNode node = new TreeNode();
if (!item.parentIdSpecified)
{
node.Text = item.name;
node.Tag = item.id;
node.Name = item.id + "";
bindChild(cats, node);
tvType.Nodes.Add(node);
}
}
}
tvType.HideSelection = false;
} private void bindChild(category[] cats, TreeNode tn)
{
foreach (category item in cats)
{
TreeNode node = new TreeNode();
if (item.parentId == int.Parse(tn.Name))
{
node.Text = item.name;
node.Tag = item;
node.Name = item.id + "";
tn.Nodes.Add(node);
bindChild(cats, node);
}
}
}