欢迎来到 GeneXus问答,任何有关GeneXus的技术问题都可以在这里提问,你将会收到社区其他成员的回答。

可查看GeneXus资源列表获取有关GeneXus信息

提问说明:
问题描述尽量清晰明了,建议按如下格式提问
版本:GeneXus15U11
环境:.net/java
运行:web/sd
现象:xx
描述:xx

请尽可能说明碰到的问题,如果问题不合规,管理员会删除该提问,多次违规将禁用账号。

使用wwp的message控件(DVMessage),在一些个别的页面,如果改变控件的样式?

0 投票

版本:GeneXus15U11  WWP 11.1.25
环境:.net/java
运行:web
现象:现在使用WorkWithPlus的pattern开发项目,pattern自带了一个消息控件(DVMessage),这个控件是放在masterpage上的,这样在项目中的每个页面,只要使用GeneXus自带的方法msg()就会触发这个控件。

这个控件有很多属性可以设置,但是在masterpage页面的这个控件上,只能设置一种情况。但项目中很多页面,会有很多种不同的样式要求,如何来实现呢?需要在每个页面再去拉这样一个控件吗?

最新提问 7月 16 分类:GeneXusWeb | 用户: xue (2,670 分)

1个回答

0 投票
 
已采纳

首先使用WWP的消息控件DVMessage,是可以在每个页面再进行自定义样式的,所以也就不需要再在每个页面中再拖拉此控件。

方法:

1. 在GeneXus安装目录下的UserControls\DVelop\DVMessage下,DVMessageResources.xpz文件里包含了自定义样式的方法,将此xpz导入到知识库中就可以了。

2.导入后会发现有5个Procedure,其中DVMessageNotification和DVMessageNotificationPrompt两个是最基本的方法,另外三个其实是封装了一些常用的情况,当然用户也可以自己来根据实际情况调用。

3. 举例说明:我要定义dvmessage显示的错误信息,类似于Transaction页面的报错信息一样,信息提醒是在输入框的右边。实现方法如下:【根据实际要的效果来传参数即可,此次调用了导入的procedure:DVMessageBasicNotification就可以了】

效果如下:

4. 再举例说明:在同样的页面,我点击按钮时,报一个成功(success)样式的消息,在页面右上角显示就行。

我这里直接调用最基本的方法,然后传递对应的参数就行。

效果如下:

这里大家注意,DVMessageNotification方法里面,开放了dvmessage的所有样式属性,所以非常灵活。但正常情况下,大家可能并需要这么复杂的修改样式,所以一般调用DVMessageBasicNotification方法就够了。但不管如何,大家可以看一下这几个procedure,就明白实现原理了,这样在实际使用中,可以根据自己的情况来调用或者写自己的方法。

测试的XPZ下载,大家参考一下截图中那两段代码即可。那5个procedure在控件安装目录下面可以找到对应的xpz文件。

最新回答 7月 17 用户: xue (2,670 分)
...