以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  窗口设定显示列无效  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=160767)

--  作者:18504175995
--  发布时间:2021/2/20 20:36:00
--  窗口设定显示列无效
老师好,我在窗口设计时设定了表显示列,设定之后是可以的,但是只要重新开表就会显示所有列,
我所设定的就变成全部无效了,请问这是什么原因,之前一直没问题,就从今天下午开始,我也不知道哪个修改能涉及到这个问题
烦请老师指教。
图片点击可在新窗口打开查看此主题相关图片如下:7a5960a2a4543ef7758dc9a2edf4464.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2021/2/21 19:35:00
--  
删除项目里的bin目录,重启项目试试。
--  作者:18504175995
--  发布时间:2021/2/22 8:13:00
--  
试了一下还是没起作用啊老师
--  作者:18504175995
--  发布时间:2021/2/22 8:28:00
--  
老师,我找到原因了,因为窗口上下分区我都绑定的是同一个表,下界面做为副本,希望在选择上界面的某行时,下界面也同步选这一行,所以我在CurrentChanged设置了如下代码
If e.Table.Current Is Nothing Then \'如果Current为Nothing
    Return \'则返回
End If
Dim wz As Integer
Dim dr As DataRow
dr = DataTables("销售业务汇总表").Find("[派车序号] = \'" & e.Table.Current("派车序号") & "\'")
If dr IsNot Nothing Then
    wz = Tables("销售业务汇总表").FindRow(dr)
    If wz >= 0 Then
        Forms("销售业务派车明细").open
        Tables("销售业务派车明细_应收应付录入表").Position =  wz
        Tables("销售业务派车明细_销售派车费用录入表").Position =  wz
    End If
End If
把这个代码屏蔽了,显示列设置就好用了,那么有没有什么方法可以即上下同步,又能在下界面部分设置显示列呢?

--  作者:有点蓝
--  发布时间:2021/2/22 9:06:00
--  
上面的表也改为副本试试
--  作者:18504175995
--  发布时间:2021/2/22 9:22:00
--  
找到方法了老师,把代码中的打开窗口命令,改为判断就可以了
If Forms("销售业务派车明细").opened()
    Dim wz As Integer
    Dim dr As DataRow
    dr = DataTables("销售业务汇总表").Find("[派车序号] = \'" & e.Table.Current("派车序号") & "\'")
    If dr IsNot Nothing Then
        wz = Tables("销售业务汇总表").FindRow(dr)
        If wz >= 0 Then
            Tables("销售业务派车明细_应收应付录入表").Position =  wz
            Tables("销售业务派车明细_销售派车费用录入表").Position =  wz
        End If
    End If
End If