Как упоминал Джейсон, <form>
не может быть вложенным. GXT FormPanel
рисует форму как часть того, как он работает, поэтому подумайте о том, чтобы нарисовать этот макет другим способом.
Чтобы эмулировать внешний вид FormPanel
, есть два основных шага.
- Чтобы получить заголовок, рамку, создайте
ContentPanel
и добавьте содержимое к этому
- Чтобы получить макет GXT 2 для рисования меток полей, используйте
FormLayout
на панели содержимого.
Это будет выглядеть примерно так (из вашего примера)
//...
ContentPanel nestedPanel = new ContentPanel(new FormLayout();
nestedPanel.setHeading("Nested Panel");
TextField nestedField = new TextField();
nestedField.setFieldLabel("Nested Field");
nestedPanel.add(nestedField);
//...
Внешнее поле по-прежнему будет управлять любой привязкой, а вложенное поле будет выглядеть так, как если бы оно было в FormPanel. Если другие функции FormPanel не используются, в общем случае может иметь больше смысла использовать ContentPanel (или LayoutContainer, если вам не нужны граница / заголовок) с FormLayout.