不明白为什么!

therealseas 2005-06-24 12:44:43

一, DataSet ds = new DataSet();
DataTable dt=new DataTable();
dt=(DataTable) dataGrid1.DataSource;
//ds.Tables.Clear();
try
{
//MessageBox.Show(dt.Rows.Count.ToString ());
ds.Tables.Add(dt);

}
catch(Exception e1)
{
MessageBox.Show(e1.Message.ToString());

}

报错:未将对象引用设置到对象的实例



二, DataSet myDataSet;
myDataSet = (DataSet) dataGrid1.DataSource;

报错:未处理的“System.InvalidCastException”类型的异常出现在 yjmdatagrid.dll 中。

其他信息: 指定的转换无效。


难道反过来由datagrid就无法取到dataset吗?
...全文
49 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
老戴12345654 2005-06-25
  • 打赏
  • 举报
回复
DataGrid 的DataSource可以是DataSet DataTable DataView
要转换则要看你邦定的时候使用的是哪一种

1、邦定的是DataSet
DataGrid1.DataSource = ds;
DataGrid1.DataBind();

转换的时候就转换成DataSet
DataSet ds = (DataSet)DataGrid1.DataSource;

2、邦定的是DATATABLE
DataGrid1.DataSource = ds.Tables[0];
DataGrid1.DataBind();
转换的时候就转换成DATATABLE,然后再加入DataSet
DataTable dt = (DataTable)DataGrid1.DataSource;
DataSet ds = new DataSet();
ds.Tables.Add(dt);

3、邦定的是DataView
DataGrid1.DataSource = ds.Tables[0].DefaultView;
DataGrid1.DataBind();
则转换成dataview,再加入dataset
DataView dv = (DataView)DataGrid1.DataSource;
DataSet ds1 = new DataSet();
ds1.Tables.Add(dv.Table);
Response.Write(dv.Count.ToString());
marvelstack 2005-06-25
  • 打赏
  • 举报
回复
dt=(DataTable) dataGrid1.DataSource;
DataSet ds = dt.DataSet;
fanruinet 2005-06-24
  • 打赏
  • 举报
回复
一、你没给dataGrid1.DataSource赋值
二、同上
therealseas 2005-06-24
  • 打赏
  • 举报
回复
没听明白,我现在是想根据已经有数据的datagrid,来反过来操作dataset,想把datagrid的datasource的数据放到dataset中,但是总不成功;.net的自带的例子就是这么说的,我怎么都不行!

但我现在可以把datasource的数据放到datatable中,没有任何问题。再进一步放到dataset中时就出错。
soft_biao 2005-06-24
  • 打赏
  • 举报
回复
页面有刷新吗?
会不会是刷新之后dataGrid1.DataSource没有重新被赋值
therealseas 2005-06-24
  • 打赏
  • 举报
回复
datasource我fill过的,datagride中还有很多记录呢,可以显示出来的。在表格里面。

强制类型转换是我照抄.net自带的帮助。居然不能用!!!!
DataSet myDataSet;
myDataSet = (DataSet) dataGrid1.DataSource;

DataSource是我fill过的,有值的,而且还能显示出来!!!

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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