Foxtable(狐表)用户栏目专家坐堂 → [求助]关联表在窗口全部显示


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

主题:[求助]关联表在窗口全部显示

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


加好友 发短信
等级:童狐 帖子:266 积分:1700 威望:0 精华:0 注册:2013/5/5 17:46:00
  发帖心情 Post By:2013/6/17 10:01:00 [只看该作者]

If Forms("户口").Opened Then

    Dim cList As List(of DataRow) = e.Table.Current.DataRow.GetChildRows("户口详细")

    If cList IsNot Nothing Then

        For i As Integer = 0 To cList.Count-1

            Forms("户口").Controls("txthz" & i).text=cList(i)("与户主关系")

        Next

    End If

End If

 

 

版主  能帮我把这断话加一下中文说明吗


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/6/17 10:05:00 [只看该作者]

If Forms("户口").Opened Then '判断一下 户口  窗口是否处于打开状态

    Dim cList As List(of DataRow) = e.Table.Current.DataRow.GetChildRows("户口详细")   获得所有关联子表行

    If cList IsNot Nothing Then  '如果有获得行,不是空值

        For i As Integer = 0 To cList.Count-1  '那么循环遍历获得的所有子表关联行

            Forms("户口").Controls("txthz" & i).text=cList(i)("与户主关系") '为文本框赋值  "txthz" & i   这里为拼接文本框的名称  假如获得2行子表数据 那么循环2次拼接的 名称分别是 txthz0  txthz1  

        Next

    End If

End If


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


加好友 发短信
等级:童狐 帖子:266 积分:1700 威望:0 精华:0 注册:2013/5/5 17:46:00
  发帖心情 Post By:2013/6/17 10:13:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130617101258.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:童狐 帖子:266 积分:1700 威望:0 精华:0 注册:2013/5/5 17:46:00
  发帖心情 Post By:2013/6/17 10:14:00 [只看该作者]

版主麻烦在看一下


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/6/17 10:15:00 [只看该作者]

If Forms("户口").Opened Then '判断一下 户口  窗口是否处于打开状态
  这里增加一段情况所有文本框内容的代码即可  http://www.foxtable.com/help/topics/1849.htm

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


加好友 发短信
等级:童狐 帖子:266 积分:1700 威望:0 精华:0 注册:2013/5/5 17:46:00
  发帖心情 Post By:2013/6/17 10:41:00 [只看该作者]

如果我希望清除窗口中所有文本框的内容,显然只能使用遍历才能完成这样的任务。
但是遍历控件的时候,只能使用WinForm.Control类型的变量,但是这样的变量又不能访问文本框的Value属性。
所以只能在遍历控件的时候判断控件类型,然后用具体的控件类型变量来引用控件:

For Each c As WinForm.Control In e.Form.Controls
    If
Typeof c Is WinForm.TextBox Then '判断控件是否是文本框
       
Dim t As WinForm.TextBox = c '使用特定类型的变量引用控件
        t.Value =
Nothing
    End
If
Next

 

版主  这里写着只有这个才能清楚所有文本框的内容

但是我放进去以后就提示Form不是TableEventArgs的成员

错误代码是   For Each c As WinForm.Control In e.Form.Controls


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/6/17 10:43:00 [只看该作者]

图片点击可在新窗口打开查看不要生搬硬套.你表事件何来的e.Form  你应该是用Forms("户口")

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


加好友 发短信
等级:童狐 帖子:266 积分:1700 威望:0 精华:0 注册:2013/5/5 17:46:00
  发帖心情 Post By:2013/6/17 11:00:00 [只看该作者]

新问题版主,用清空文本控件后的新问题,点户号哪个窗口来回切换的话会把原来的数据删数 而不是清空文本控件的内容

下载复件看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目10.rar

[此贴子已经被作者于2013-6-17 11:01:57编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/6/17 11:17:00 [只看该作者]

你请空把关联列给清空了, 你要么判断一下不需要清空的不清空 要么全部都不要绑定列, 全部使用代码赋值处理

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目10.table



 回到顶部
总数 19 上一页 1 2