苏州三木软件科技有限公司

 找回密码
 立即注册
搜索
热搜: 活动
查看: 819|回复: 3

当前菜单按钮的子表允许编辑代码应该怎么写

[复制链接]

71

主题

118

帖子

440

积分

中级会员

Rank: 3Rank: 3

积分
440
发表于 2025-6-16 14:51:05 | 显示全部楼层 |阅读模式
  1. Proj.CurrentClickedGridMenu.BaseGrid.BaseBaseGrid.AllowEdit=True‘主表允许编辑正确代码
  2.                                                 proj.CurrentClickedGridMenu.SubGrids.AllowEdit = True’子表允许编辑代码我猜错了
复制代码
怎么通过F12 追踪出子表代码
回复

使用道具 举报

106

主题

494

帖子

3029

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3029
QQ
发表于 2025-6-16 14:55:53 | 显示全部楼层
先把平台内部的主要对象之间的关联关系了解了,再结合F12追踪,就自然而然的了解了。
http://www.sanmugrid.com/help/in ... %AF%B9%E8%B1%A1.htm
http://www.sanmugrid.com/help/in ... %84%91%E5%9B%BE.htm
回复

使用道具 举报

106

主题

494

帖子

3029

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3029
QQ
发表于 2025-6-16 15:31:30 | 显示全部楼层
Dim tbl As IDataRuleGrid=TryCast(Proj.CurrentClickedGridMenu.BaseGrid,IDataRuleGrid)
If tbl IsNot Nothing Then
        tbl.SubGrids
End If
回复

使用道具 举报

71

主题

118

帖子

440

积分

中级会员

Rank: 3Rank: 3

积分
440
 楼主| 发表于 2025-6-17 09:40:50 | 显示全部楼层
感谢admin帮助。
通过当前窗口菜单按钮,允许本窗口所有的子表编辑代码如下
  1.                         '设置所有多个子表允许编辑
  2.                         Dim tbl As IDataRuleGrid=TryCast(Proj.CurrentClickedGridMenu.BaseGrid,IDataRuleGrid)
  3.                         If tbl IsNot Nothing Then                               
  4.                                 '因为子表有可能在主窗口或者只在子窗口里面显示,所以使用tbl.Relation.ChildrenGrids更合理一点。
  5.                                 '                                tbl.SubGrids.GridS  这个被放弃了                                                                                                                               
  6.                                 For Each subtbl As IDataRuleGrid In tbl.Relation.ChildrenGrids
  7.                                         subtbl.BaseBaseGrid.AllowEdit=True
  8.                                         '如果能正确转换成SmGrid对象,则要看看有没有对应的副表
  9.                                         Dim tblS As SmGrid=TryCast(subtbl,SmGRid)
  10.                                         If tblS IsNot Nothing AndAlso tblS.CopyGrids.Count > 0 Then
  11.                                                 '如果有副表,则也要处理一下副表
  12.                                                 For Each bb As BaseGrid In tblS.CopyGrids
  13.                                                         bb.AllowEdit=True
  14.                                                 Next                                               
  15.                                         End If
  16.                                 Next
  17.                                
  18.                         End If
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|苏州三木软件科技有限公司 ( 苏ICP备2022038390号 )

苏公网安备 32058502010732号

GMT+8, 2025-7-1 19:17 , Processed in 0.084435 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表