如何使用UIBinder混合HTML和GWT小部件?

时间:2011-06-27 14:24:28

标签: gwt uibinder

我们有一个使用UIBinder构建的现有UI,其ui.xml文件包含以下层次结构:

<ui:UiBinder>
<div>
Multiple <span> or <a> separated by verbatim HTML (like | separators).

我需要用列表框替换其中一个锚点。

有没有办法在不使用HTMLPanel替换div并将所有锚点更改为其他内容的情况下进行此转换?

如果我尝试在那里粘贴gwt:ValueListBox或gwt:ListBox,我会收到一条错误消息,我不能将它们混合在一起。我也不能在UIBinder下有多个子节点(例如div和HTMLPanel)。

如果我唯一的选择是将所有内容转换为小部件,那么和项目的适当转换是什么?

2 个答案:

答案 0 :(得分:13)

在UIBinder中,HTMLPanel可以包含HTML元素和GWT小部件,但HTML元素只能包含其他HTML元素。

只需将顶级div替换为HTMLPanel,然后仅使用<a>替换特定的gwt:ListBox锚点。

答案 1 :(得分:1)

喜欢这个

<gwt:HTMLPanel>
    <div align="center">
        <gwt:VerticalPanel res:styleName="style.background">