| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2712 人关注过本帖
标题:[求助]使用TreeView控件,为什么会报:未将对象引用设置到对象的实例
只看楼主 加入收藏
yjh633
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-3-11
收藏
 问题点数:0 回复次数:6 
[求助]使用TreeView控件,为什么会报:未将对象引用设置到对象的实例

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;


namespace WindowsApplication8
{
public partial class Form3 : Form
{

public Form3()
{
InitializeComponent();

}


private void AddChildNode()
{
if (treeView1.SelectedNode == null)
{
MessageBox.Show("请选择一个节点", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
if (textBox1.Text =="")
{
TreeNode tmp = new TreeNode(textBox1.Text);
treeView1.SelectedNode.Nodes.Add(tmp);
treeView1.ExpandAll();
}
else
{
MessageBox.Show("TEXTBOX组件必须填入节点名称!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
return;
}
}
private void AddParent()
{
//首先判断是否选定组件中节点的位置
if (treeView1.SelectedNode == null)
{
MessageBox.Show("请选择一个节点", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
if (textBox1.Text != "")
{
//创建一个节点对象,并初始化
TreeNode tmp;
tmp = new TreeNode(textBox1.Text);
//在TreeView组件中加入兄弟节点
treeView1.SelectedNode.Parent.Nodes.Add(tmp);
treeView1.ExpandAll();
}
else
{
MessageBox.Show("TextBox组件必须填入节点名称!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
}
TreeNode tnode = new TreeNode(textBox1.Text);
}

private void treeView1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
contextMenuStrip1.Show(this, new Point(e.X, e.Y));

}

private void Form3_Load(object sender, EventArgs e)
{

}

private void button3_Click(object sender, EventArgs e)
{

treeView1.SelectedNode.Expand();
}

private void button4_Click(object sender, System.EventArgs e)
{
//定位根节点
treeView1.SelectedNode = treeView1.Nodes[0];
//展开组件中的所有节点
treeView1.SelectedNode.ExpandAll();
}
private void menuItem2_Click(object sender, System.EventArgs e)
{
AddChildNode();
}
private void menuItem3_Click(object sender, System.EventArgs e)
{
AddParent();
}
private void menuItem4_Click(object sender, System.EventArgs e)
{
//判断选定的节点是否存在下一级节点
if (treeView1.SelectedNode.Nodes.Count == 0)
//删除节点
treeView1.SelectedNode.Remove();
else
MessageBox.Show("请先删除此节点中的子节点!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}

private void button5_Click(object sender, System.EventArgs e)
{
//定位根节点
treeView1.SelectedNode = treeView1.Nodes[0];
//折叠组件中所有节点
treeView1.SelectedNode.Collapse();
}

}
}

搜索更多相关主题的帖子: using System 会报 TreeView 实例 
2006-10-16 15:20
wohemachen
Rank: 1
等 级:新手上路
威 望:2
帖 子:641
专家分:0
注 册:2006-9-21
收藏
得分:0 

这么长啊~~~~
你把报错的地方写一下吧~!
太长了~


[glow=255,red,2]桃花坞里桃花庵,桃花庵里桃花仙;桃花仙人种桃树,又摘桃花换酒钱。[/glow]
2006-10-16 16:28
myloverduan
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2006-8-18
收藏
得分:0 
不就是绑定吗?用递归不是很好的啊?

和大家一起学习哦~~!!呵呵~!
2006-10-16 20:02
yjh633
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-3-11
收藏
得分:0 
[求助]a
a
图片附件: 游客没有浏览图片的权限,请 登录注册

工期

[此贴子已经被作者于2006-10-16 20:12:33编辑过]

2006-10-16 20:09
yjh633
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-3-11
收藏
得分:0 

哈...递归不太懂耶..

2006-10-16 20:13
yangglemu
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:273
专家分:521
注 册:2006-9-15
收藏
得分:0 

让我们共同复习一下:
递归:在定义一个函数时出现调用本函数的事件就是递归。函数内部调用称为直接递归,若A调用B,而B中调用A,称为间接递归。
例:
public int addNumber(int s,int i)
{
if (s < 0 || i < 0 || i - s < 1) return -1;
int y;
if (i-s== 1)
{
y = s+i;
return y;
}
else
{
y = i + addNumber(s, --i);
return y;

}
}

如果调用函数addNumber(1,100),则返回5050,此递归函数是返回介于两个正整数之间的所有整数的和,程序执行的时候,一步一步减小i的值,第一步得到中间结果100+addNumber(1,99)并保存(既有实际意义的值也有变量),继续求99+addNumber(1,98)……并把所有中间结果保存在内存中(堆栈),直到满足条件2-1==1的时候停止前行,并由返回值3(实际意义的值)开始回溯赋给先前保存的临时变量,也就是3+3+4+5……直到100。
所有的递归都可以通过迭代的方法转化成非递归形式。所谓迭就是重复,代就是替换,对应C#里面的For循环。
递归与迭代的对比:
递归算法的时间复杂度一般为2n,因为它要回溯。
迭代的算法时间复杂度为n。
很明显递归增加了系统负荷,相比迭代占用了较多的内存。但有时候能使程序更简洁,一般在树、表、图的查询中使用较多。


试着挣个威望!
2006-10-17 04:05
yjh633
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-3-11
收藏
得分:0 

嗯...谢谢.

2006-10-17 12:44
快速回复:[求助]使用TreeView控件,为什么会报:未将对象引用设置到对象的实例
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019413 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved