求高手给指点下

蒙奇D么么哒 2009-04-22 02:31:47
在树节点选择时,视图表里项目的改变
private void TreeChange()
{
string filter = "";
if (tvCatory.SelectedNode.Name != "Root")
filter = "CategoryId = " + tvCatory.SelectedNode.Name;


DataView dv = dataGridView1.DataSource as DataView;
dv.RowFilter = filter;
}

private void tvCatory_Click(object sender, EventArgs e)
{
TreeChange();
}

报错为:
未处理 System.NullReferenceException
Message="未将对象引用设置到对象的实例。"
Source="ADONETDOM2"
...全文
95 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
icansaymyabc 2009-04-29
  • 打赏
  • 举报
回复
你这段代码能通过编译?还能运行出错? 是C++吗?
mengde007 2009-04-22
  • 打赏
  • 举报
回复
帮顶;
liliangbao 2009-04-22
  • 打赏
  • 举报
回复
帮顶~
jame2001 2009-04-22
  • 打赏
  • 举报
回复
檢查 tvCatory.SelectedNode 是否為空
ryuk33 2009-04-22
  • 打赏
  • 举报
回复
DataView dv = dataGridView1.DataSource as DataView;
dv.RowFilter = filter;

这里, 我没猜错的话,应该是:
DataView dv = dataGridView1.DataSource as DataView;
这行,得到的结果是NULL.


请楼主确认两点:
1> dataGridView1.DataSource 不是NULL
2> dataGridView1.DataSource 的类型,是DataView. 如果不是,那么,返回的将是NULL.

出错的应该是这行:
dv.RowFilter = filter;

由于dv是NULL,所以,你要使用dv.RowFilter时,出错了.

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧