【GeneXus】在WorkWithPlus中如何定义未被包含的页面属性?
在使用GeneXus开发项目的过程中,有很多用户会使用到WorkWithPlus这个模板。通过WorkWithPlus的编辑器,让页面的调整变得极为简单,尤其是响应式页面。在WorkWithPlus的编辑器里,已经包含了GeneXus各种控件的常用属性,如下图所示:
但是有时候在WorkWithPlus编辑器里右边的属性栏中没有包含某个我们需要设置的页面属性,例如Grid的Rows、Paging等属性,那么这时候如何处理比较好呢?
解决这个问题我们一般有两种方式,首先考虑要设置的这个属性是否可以在代码中动态赋值,如果可以,则通过一行代码就可以解决这个问题;如果不行,则需要通过WorkWithPlus的Custom properties来实现。接下来我们分别举两个例子来说明一下。
1. 在GeneXus的WebForm里面,我们是可以直接在Grid的属性中设置Rows值的。
但在WorkWithPlus的编辑器中,没有包含Grid的Rows属性,因为WorkWithPlus统一设置了列表数据的Rows值。那么如果对于个别页面,想单独设置列表行数Rows,如何操作呢?我们知道Grid的Rows属性是可以通过代码动态赋值的,所以这种情况,我们在该页面里面的Start事件直接对该Grid的Rows进行赋值即可。
例如:Grid.Rows = 15,该行代要写在WorkWithPlus生成的代码下面。
2. 但如果要设置的属性不支持通过代码动态赋值,我们需要开启WorkWithPlus的Custom properties属性。如图:
这个属性一般默认是隐藏起来的,如果需要使用,那么我们首先要把它设置显示出来:工具-->选择-->WorkWithPlus-->显示自定义属性:True
设置完之后,需要重启GeneXus,在WorkWithPlus的编辑器中就会看到Custom Properties。
这个值的具体写法,我们通过如下方式获取。例如我们需要在WorkWithPlus编辑器里面将Grid的Paging属性设置为Infinite scrolling。先新建一个未使用WorkWithPlus的Web Panel,直接在属性栏中对需要修改的属性进行设置,如下图设置Grid的Infinite scrolling属性:
然后将这个页面导出为xml格式的文件:
然后打开Xml文件,搜索一下自己设置的属性:
将对应的值复制到Custom properties就可以了。 这里需要注意,有的内容会包含转义字符,可以先处理一下再复制。
例如rows="10" 未包含转义字符,则可以直接使用。但InfiniteScrolling对应的内容有很多转义字符,则需要先处理一下。
具体的转义字符可以参考网上的信息,以下是常用的几个。
将InfiniteScrolling对应的内容中的转义字符替换掉后,值为<Name>InfiniteScrolling<Name><Value>Infinite scrolling<Value>,
我们需要写成Name=Value的形式,在Custom properties里即为:InfiniteScrolling=Infinite scrolling
Custom properties如果有多个属性的话,用分号隔开即可:
有关第二种方式,如果想了解更多,还可以参考:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)