Foxtable(狐表)用户栏目专家坐堂 → 请问 'e' 需要怎样声明?


  共有11752人关注过本帖树形打印复制链接

主题:请问 'e' 需要怎样声明?

帅哥哟,离线,有人找我吗?
gzdw
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:308 积分:3351 威望:0 精华:0 注册:2011/12/22 17:52:00
请问 'e' 需要怎样声明?  发帖心情 Post By:2011/12/24 14:09:00 [显示全部帖子]

我在练习帮助说明中关于“DataRowAdding”的操作时,在命令窗口运行

If e. DataTable .DataRows.Count = 0 Then '如果是一个空表
   
Return '那么返回
End
If

 

时出错了,提示为:编译错误:Name 'e' is not declared。

这个'e'不是直接能引用吗?还要怎样声明啊?


 回到顶部
帅哥哟,离线,有人找我吗?
gzdw
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:308 积分:3351 威望:0 精华:0 注册:2011/12/22 17:52:00
  发帖心情 Post By:2011/12/24 14:33:00 [显示全部帖子]

我把“DataRowAdding”的例子四,拷贝到窗口的一个按钮代码,想通过按钮来执行,还是出错了。

以下是代码

 

If e.DataTable.DataRows.Count = 0 Then '如果是一个空表
    Return '那么返回
End If
Dim ColNames As String() = {"日期","客户","雇员"} '定义一个数组,保存复制列的名称
Dim dr As DataRow = e.DataTable.DataRows(e.DataTable.DataRows.Count - 1) '获得最后一行
For Each ColName As String in ColNames
    e.DataRow(ColName) = dr(ColName) '将最后一行的内容复制到新增行中.
Next

保存时,出现:

编译错误:'DataTable' is  not a member of 'ControlEventArgs'

[此贴子已经被作者于2011-12-24 14:34:45编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
gzdw
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:308 积分:3351 威望:0 精华:0 注册:2011/12/22 17:52:00
  发帖心情 Post By:2011/12/25 19:39:00 [显示全部帖子]

 后来用 Tables("客户").  代替e. 调试通过了

对foxtable有更多的理解,我觉得下面一句效率很高。

For Each ColName As String In ColNames
Next

 

修改后代码为:

Dim ColNames As String () = { "日期" , "客户" , "雇员" } ' 定义一个数组,保存复制列的名称
Dim r As Row = Tables("客户").Rows (Tables("客户").Rows.Count - 1) '获得最后一行
Tables("客户").AddNew()
For Each ColName As String In ColNames
  Tables("客户").Rows(Tables("客户").Rows.Count - 1)(ColName) = r(ColName) '将最后一行的内容复制到新增行中.
Next

 
[此贴子已经被作者于2011-12-25 19:52:35编辑过]

 回到顶部