2012-04-10 65 views
0

我有一个扩展页面对话框,我把它放在一个自定义控件中。该对话框用于搜索成本中心并返回诸如市场,成本中心编号,成本中心名称等信息。处理xpages扩展对话框的最佳做法?

按下“选择”按钮并出现对话框。用户搜索并选择他们的成本中心。按下OK按钮,关闭对话框并更新x页上的各个字段。

有几个问题。

  1. 当前CC上的“选择”按钮需要知道并引用CC中对话框控件的名称。在我看来,这不是最佳做法。我的最终用户程序员需要知道CC中该对话框控件的ID。有没有什么办法让我的“选择”按钮可以“显示”CC和CC实际上会显示对话框控制?

  2. 我的CC使用自定义属性来存储选定成本中心的各种文档字段。 OK按钮然后使用这些属性来设置xPage上的各个字段。这似乎并不是最佳做法。如果我想在另一个应用程序中使用该CC,那么我可能需要在OK按钮中编辑代码。有没有更好的方法来处理这个问题?就像我可以为CC设置属性,当我将它放在我的xPage上时,是否有一种方法可以告诉我当按下OK按钮时要执行的代码?

我想过的一件事是为需要通过确定按钮进行更新的字段的属性,但似乎没有那么灵活。

回答

0

对于需要知道id的问题不知道是否有错字,但我不明白为什么它不好使cc内的选择按钮不需要打开对话框的ID?你的意思是选择不在cc?无论哪种方式,你尝试过什么样的自定义控件创建一个属性,因此,从外面可以设置的东西也许

<xc:mycustomControl showDialog="false"> 

,然后在外面有事改变的ShowDialog并刷新CC,则CC里面你可以在页面加载之前/之后确定showDialog为true/false时会发生什么。

对于你的第二个问题,我觉得这应该是使用多米诺骨牌文档结构。而不是对话框拉出每一块和OK按钮更新,我会做的是在页面上有一个多米诺骨牌文档数据源。当通过对话框选择某些东西时,我会更新该源指向的文档,并将所有字段绑定到他们需要的字段上。这种方式后,选择的东西只会更新文件包含的字段,并且它将更加可重用,只要多米诺文档具有相同的字段名称

+0

是的选择按钮是CC外的XPAGE。我的对话框在CC内部。我的最终用户程序员将CC丢弃在Xpage中。我的最终用户程序员不需要担心CC的内部工作,就是接触到他的内容。我曾与之合作过的每个面向对象的程序都是这样。 – 2012-04-11 11:40:37

+0

对于第二个问题,我只是在考虑使用多米诺文档作为CC的属性而不是单个属性。因此,CC搜索成本中心并设置多米诺骨牌的属性。但我仍然需要对返回的内容进行一些操作。我应该能够让我的最终用户程序员在他放置CC时“插入”该操作。就像他可能设置一个物业一​​样。 – 2012-04-11 11:42:02

+0

showDialog属性的想法显示了一些承诺,谢谢。 – 2012-04-11 11:43:58