CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  VB.NET

搞了一天都没有搞定!!!!给100分,请高手帮忙!!!!!!!!!!!!

楼主wangchong(网虫)2003-09-02 13:57:53 在 .NET技术 / VB.NET 提问

程序这样:  
    Dim   ds   As   New   DataSet()  
    Dim   dt   As   New   DataTable()  
    Dim   dc   As   New   DataColumn()  
   
    dc   =   New   DataColumn()  
    dc.ColumnName   =   "NO"  
    dc.DataType   =   System.Type.GetType("System.Single")  
    dt.Columns.Add(dc)  
   
  运行到dt.Columns.Add(dc)时出现下面错误  
   
  未处理的“System.NullReferenceException”类型的异常出现在   WindowsApplication3.exe   中  
   
  其他信息:未将对象引用设置到对象的实例。 问题点数:0、回复次数:8Top

1 楼senvy(senvy)回复于 2003-09-02 14:12:13 得分 0

dc   =   New   DataColumn()  
  =>  
  Set   dc   =   New   DataColumn()Top

2 楼wangchong(网虫)回复于 2003-09-02 14:16:52 得分 0

这两句是一回事呀!!!!Top

3 楼panyee(快乐王子)回复于 2003-09-02 14:19:46 得分 0

DataTable   dt   =   new   DataTable();  
  dt.Columns.Add(new   DataColumn("PropID",   typeof(string)));  
  dt.Columns.Add(new   DataColumn("PropName",   typeof(string)));  
  dt.Columns.Add(new   DataColumn("PropValue",   typeof(string)));Top

4 楼Brunhild()回复于 2003-09-02 14:21:25 得分 0

楼主的代码我已试过,没有出错,可能不是语句的问题。  
   
  Top

5 楼lihonggen0(李洪根,MS MVP,标准答案来了)回复于 2003-09-02 14:25:44 得分 0

以下示例创建两个   DataTable   对象和一个   DataRelation   对象,并将这些新对象添加到   DataSet   中。然后通过调用   DataGrid.SetDataBinding   方法在   DataGrid   控件中显示这些表。  
   
          '   Put   the   next   line   into   the   Declarations   section.  
          Private   myDataSet   As   DataSet  
   
          Private   Sub   MakeDataTables()  
                  '   Run   all   of   the   functions.    
                  MakeParentTable()  
                  MakeChildTable()  
                  MakeDataRelation()  
                  BindToDataGrid()  
          End   Sub  
   
          Private   Sub   MakeParentTable()  
                  '   Create   a   new   DataTable.  
                  Dim   myDataTable   As   DataTable   =   New   DataTable("ParentTable")  
                  '   Declare   variables   for   DataColumn   and   DataRow   objects.  
                  Dim   myDataColumn   As   DataColumn  
                  Dim   myDataRow   As   DataRow  
   
                  '   Create   new   DataColumn,   set   DataType,   ColumnName   and   add   to   DataTable.          
                  myDataColumn   =   New   DataColumn()  
                  myDataColumn.DataType   =   System.Type.GetType("System.Int32")  
                  myDataColumn.ColumnName   =   "id"  
                  myDataColumn.ReadOnly   =   True  
                  myDataColumn.Unique   =   True  
                  '   Add   the   Column   to   the   DataColumnCollection.  
                  myDataTable.Columns.Add(myDataColumn)  
   
                  '   Create   second   column.  
                  myDataColumn   =   New   DataColumn()  
                  myDataColumn.DataType   =   System.Type.GetType("System.String")  
                  myDataColumn.ColumnName   =   "ParentItem"  
                  myDataColumn.AutoIncrement   =   False  
                  myDataColumn.Caption   =   "ParentItem"  
                  myDataColumn.ReadOnly   =   False  
                  myDataColumn.Unique   =   False  
                  '   Add   the   column   to   the   table.  
                  myDataTable.Columns.Add(myDataColumn)  
   
                  '   Make   the   ID   column   the   primary   key   column.  
                  Dim   PrimaryKeyColumns(0)   As   DataColumn  
                  PrimaryKeyColumns(0)   =   myDataTable.Columns("id")  
                  myDataTable.PrimaryKey   =   PrimaryKeyColumns  
   
                  '   Instantiate   the   DataSet   variable.  
                  myDataSet   =   New   DataSet()  
                  '   Add   the   new   DataTable   to   the   DataSet.  
                  myDataSet.Tables.Add(myDataTable)  
   
                  '   Create   three   new   DataRow   objects   and   add   them   to   the   DataTable  
                  Dim   i   As   Integer  
                  For   i   =   0   To   2  
                          myDataRow   =   myDataTable.NewRow()  
                          myDataRow("id")   =   i  
                          myDataRow("ParentItem")   =   "ParentItem   "   +   i.ToString()  
                          myDataTable.Rows.Add(myDataRow)  
                  Next   i  
          End   Sub  
   
          Private   Sub   MakeChildTable()  
                  '   Create   a   new   DataTable.  
                  Dim   myDataTable   As   DataTable   =   New   DataTable("childTable")  
                  Dim   myDataColumn   As   DataColumn  
                  Dim   myDataRow   As   DataRow  
   
                  '   Create   first   column   and   add   to   the   DataTable.  
                  myDataColumn   =   New   DataColumn()  
                  myDataColumn.DataType   =   System.Type.GetType("System.Int32")  
                  myDataColumn.ColumnName   =   "ChildID"  
                  myDataColumn.AutoIncrement   =   True  
                  myDataColumn.Caption   =   "ID"  
                  myDataColumn.ReadOnly   =   True  
                  myDataColumn.Unique   =   True  
                  '   Add   the   column   to   the   DataColumnCollection.  
                  myDataTable.Columns.Add(myDataColumn)  
   
                  '   Create   second   column.  
                  myDataColumn   =   New   DataColumn()  
                  myDataColumn.DataType   =   System.Type.GetType("System.String")  
                  myDataColumn.ColumnName   =   "ChildItem"  
                  myDataColumn.AutoIncrement   =   False  
                  myDataColumn.Caption   =   "ChildItem"  
                  myDataColumn.ReadOnly   =   False  
                  myDataColumn.Unique   =   False  
                  myDataTable.Columns.Add(myDataColumn)  
   
                  '   Create   third   column.  
                  myDataColumn   =   New   DataColumn()  
                  myDataColumn.DataType   =   System.Type.GetType("System.Int32")  
                  myDataColumn.ColumnName   =   "ParentID"  
                  myDataColumn.AutoIncrement   =   False  
                  myDataColumn.Caption   =   "ParentID"  
                  myDataColumn.ReadOnly   =   False  
                  myDataColumn.Unique   =   False  
                  myDataTable.Columns.Add(myDataColumn)  
   
                  myDataSet.Tables.Add(myDataTable)  
                  '   Create   three   sets   of   DataRow   objects,   five   rows   each,   and   add   to   DataTable.  
                  Dim   i   As   Integer  
                  For   i   =   0   To   4  
                          myDataRow   =   myDataTable.NewRow()  
                          myDataRow("childID")   =   i  
                          myDataRow("ChildItem")   =   "Item   "   +   i.ToString()  
                          myDataRow("ParentID")   =   0  
                          myDataTable.Rows.Add(myDataRow)  
                  Next   i  
                  For   i   =   0   To   4  
                          myDataRow   =   myDataTable.NewRow()  
                          myDataRow("childID")   =   i   +   5  
                          myDataRow("ChildItem")   =   "Item   "   +   i.ToString()  
                          myDataRow("ParentID")   =   1  
                          myDataTable.Rows.Add(myDataRow)  
                  Next   i  
                  For   i   =   0   To   4  
                          myDataRow   =   myDataTable.NewRow()  
                          myDataRow("childID")   =   i   +   10  
                          myDataRow("ChildItem")   =   "Item   "   +   i.ToString()  
                          myDataRow("ParentID")   =   2  
                          myDataTable.Rows.Add(myDataRow)  
                  Next   i  
          End   Sub  
   
          Private   Sub   MakeDataRelation()  
                  '   DataRelation   requires   two   DataColumn   (parent   and   child)   and   a   name.  
                  Dim   myDataRelation   As   DataRelation  
                  Dim   parentColumn   As   DataColumn  
                  Dim   childColumn   As   DataColumn  
                  parentColumn   =   myDataSet.Tables("ParentTable").Columns("id")  
                  childColumn   =   myDataSet.Tables("ChildTable").Columns("ParentID")  
                  myDataRelation   =   New   DataRelation("parent2Child",   parentColumn,   childColumn)  
                  myDataSet.Tables("ChildTable").ParentRelations.Add(myDataRelation)  
          End   Sub  
   
          Private   Sub   BindToDataGrid()  
                  '   Instruct   the   DataGrid   to   bind   to   the   DataSet,   with   the    
                  '   ParentTable   as   the   topmost   DataTable.  
                  DataGrid1.SetDataBinding(myDataSet,   "ParentTable")  
          End   Sub  
  Top

6 楼wangchong(网虫)回复于 2003-09-02 14:31:09 得分 0

这段代码我原来也测试过,没有什么问题,但现在有问题了。不知为什么!!Top

7 楼lihonggen0(李洪根,MS MVP,标准答案来了)回复于 2003-09-02 14:32:09 得分 0

楼主,你的代码没有错  
   
  我在窗体上加一个datagrid试了一下  
  能显示列NO  
   
   
                Dim   ds   As   New   DataSet()  
                  Dim   dt   As   New   DataTable()  
                  Dim   dc   As   DataColumn  
   
                  dc   =   New   DataColumn()  
                  dc.ColumnName   =   "NO"  
                  dc.DataType   =   System.Type.GetType("System.Single")  
                  dt.Columns.Add(dc)  
                  DataGrid1.SetDataBinding(dt,   "")  
  Top

8 楼lihonggen0(李洪根,MS MVP,标准答案来了)回复于 2003-09-02 14:32:20 得分 0

楼主,你的代码没有错  
   
  我在窗体上加一个datagrid试了一下  
  能显示列NO  
   
   
                Dim   ds   As   New   DataSet()  
                  Dim   dt   As   New   DataTable()  
                  Dim   dc   As   DataColumn  
   
                  dc   =   New   DataColumn()  
                  dc.ColumnName   =   "NO"  
                  dc.DataType   =   System.Type.GetType("System.Single")  
                  dt.Columns.Add(dc)  
                  DataGrid1.SetDataBinding(dt,   "")  
  Top

9 楼CMIC(大象)回复于 2003-09-02 14:43:00 得分 0

Dim   ds   As   New   DataSet()  
    Dim   dt   As   New   DataTable()  
    Dim   dc   As   New   DataColumn()  
   
    dc   =   New   DataColumn()  
    dc.ColumnName   =   "NO"  
    dc.DataType   =   System.Type.GetType("System.Single")'这句错了改成dc.DataType   =   System.Type.GetType(System.Single)  
   
    dt.Columns.Add(dc)  
  Top

相关问题

  • 小天高手,还是没有搞定,请来指点啊!
  • 搞定
  • 一道笔试题,汗,没有搞定
  • 一道笔试题,汗,没有搞定
  • showModalDialog问题,两天了我还没有搞定,请各位帮忙!谢谢!!
  • ★高分请教,分不够我再加,“研究一个年假没有搞定”???
  • 高手请进 N年没有搞定的问现在又来了
  • 日期问题,搞定了我请客
  • 100分。请大虾帮忙搞定
  • 安装PHP的问题,搞了一天都没有搞定,高手请进,高分相送

关键词

  • dc
  • 代码
  • mydatacolumn
  • mydatarow
  • datacolumn
  • mydatatable
  • datatable
  • datatype
  • childitem
  • columnname

得分解答快速导航

  • 帖主:wangchong

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo