Foxtable(狐表)用户栏目专家坐堂 → [求助]listview17增加按钮


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

主题:[求助]listview17增加按钮

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
[求助]listview17增加按钮  发帖心情 Post By:2018/7/1 17:35:00 [只看该作者]

老师,
   listview17的例子问题,在网络状态下,这个行数是随时变动,应该怎么写才好呢?
增加按钮
Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim r As Row = Tables("员工").AddNew()
Dim cnt As Integer = DataTables("员工").DataRows.Count '记录打开窗口前的行数
Forms("员工信息").Open()
If DataTables("员工").DataRows.Count = cnt '如果新增行已经保存
    Dim vr As WinForm.ListViewRow = lvw.Rows.Add()
    For Each cl As WinForm.ListViewColumn In lvw.Columns '逐列取值
        vr(cl.Name) = r(cl.Name)
    Next
      If r("性别") = "男" Then '设置分组
        vr.ImageKey = "Man"
    Else
        vr.ImageKey = "Woman"
    End If
    vr.Tag = r.DataRow '将DataRow赋值给ListViewRow的Tag属性,将二者联系起来
End If
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:listview17.table




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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/1 20:42:00 [只看该作者]

1、网络状态?你实时变更【员工】表的数据?试试同步后台数据库的数据?

 

2、当你员工表实时变化的时候,你的listview也应该重新生成才对。


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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2018/7/1 20:48:00 [只看该作者]

那这个更新事件写在哪里比较好  网络事件中?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/1 21:05:00 [只看该作者]

你用什么方式更新表数据的?更新的时候,如果窗口打开,你要把listview的数据清空,重新生成的。

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2018/8/8 21:40:00 [只看该作者]

老师,
  我的意思是,网络状态下判断这个行数应该不好判定吧,能否换成其他的,如
Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim r As Row = Tables("员工").AddNew()
Forms("员工信息").Open()
If r.DataRow.RowState=DataRowState.Unchanged Then'  这样写可以吗?
    Dim vr As WinForm.ListViewRow = lvw.Rows.Add()
    For Each cl As WinForm.ListViewColumn In lvw.Columns '逐列取值
        vr(cl.Name) = r(cl.Name)
    Next
          vr.Tag = r.DataRow '将DataRow赋值给ListViewRow的Tag属性,将二者联系起来
End If
[此贴子已经被作者于2018/8/8 22:01:15编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2018/8/8 22:18:00 [只看该作者]

老师,
还有问题二 
  示例十七-应用 窗口的 修改按钮,为什么不能同步到点击的LISTVIEW 的行,总是末行
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:listview17.table



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/8 22:21:00 [只看该作者]

这个和你是否网络无关,操作的都是已经加载进来的数据。你是不是想得有点多。

 

你写的代码有问题,r变量有可能为删除的行,改成 If r isNot Nothing AndAlso r.DataRow.RowState=DataRowState.Unchanged Then


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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2018/8/8 22:27:00 [只看该作者]

哦 换成绑定窗口中TABLE  增加和修改都不好用了,哪里不对?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/8 22:32:00 [只看该作者]

以下是引用blsu33在2018/8/8 22:27:00的发言:
哦 换成绑定窗口中TABLE  增加和修改都不好用了,哪里不对?

 

1、【员工信息】窗口的控件,绑定的是【员工】表;

 

2、http://www.foxtable.com/webhelp/scr/2631.htm

 


 回到顶部