Gwt 列表网格中选择项的显示字段

Gwt 列表网格中选择项的显示字段,gwt,smartgwt,Gwt,Smartgwt,大家好 我在windows和mozilla浏览器上使用smart gwt 2.2 我使用的是带有两个字段的列表网格。 我将第二个字段的编辑器类型设置为SelectItem。 在该选择项中,我正在渲染网格。 对于选择项,我设置值字段和显示字段 但在“从选择项中选择任何项”之后,它是“显示值”字段。 我也附上它的代码 网格代码 public void initializeGrid() { ListGrid grid = new ListGrid(); setGridProperty(grid

大家好 我在windows和mozilla浏览器上使用smart gwt 2.2

我使用的是带有两个字段的列表网格。 我将第二个字段的编辑器类型设置为SelectItem。 在该选择项中,我正在渲染网格。 对于选择项,我设置值字段和显示字段

但在“从选择项中选择任何项”之后,它是“显示值”字段。 我也附上它的代码

网格代码

public void initializeGrid() {
  ListGrid grid = new ListGrid();
  setGridProperty(grid);
  grid.setFields(getGridFields());
  grid.setData(getGridData());
  getSmartContainer().addChild(grid);
 }

 private static ListGridRecord[] getGridData() {
  ListGridRecord record = new ListGridRecord();
  record.setAttribute("id", "");
  record.setAttribute("name", "");

                ListGridRecord record1 = new ListGridRecord();
  record1.setAttribute("id", "");
  record1.setAttribute("name", "");

  return new ListGridRecord[] { record, record1 };
 }

 private static void setGridProperty(ListGrid grid) {
  grid.setWidth("90%");
  grid.setHeight(125);
  grid.setCanEdit(true);
  grid.setEditEvent(ListGridEditEvent.CLICK);
  grid.setEditByCell(true);
  grid.setAlternateRecordStyles(true);
  grid.setShowAllRecords(true);
 }

 private static ListGridField[] getGridFields() {
  ListGridField field = new ListGridField("id");
  FormItem item = new TextItem();
  field.setEditorType(item);

  ListGridField field1 = new ListGridField("name");
  SelectItem item1 = new SelectItem("name");
  setPropertyForSelectitem(item1);
  DataSource dataSource = new DataSource();
  dataSource.setClientOnly(true);
  item1.setOptionDataSource(dataSource);
  setDataForSelectItem(dataSource);
  field1.setEditorType(item1);

                return new ListGridField[] { field, field1 };
 }
所选项目的代码

public static void setDataForSelectItem(DataSource dataSource) {
  for (int i = 0; i < 2; i++) {
   ListGridRecord record = new ListGridRecord();
   record.setAttribute("id", "1");
   record.setAttribute("name", "name" + i);
   record.setAttribute("address", "address" + i);
   dataSource.addData(record);
  }
 }

 private static void setPropertyForSelectitem(SelectItem item) {
  item.setPickListFields(getFieldsForSelectItem());
  item.setWidth(150);
  item.setValueField("id");
  item.setDisplayField("name");
  item.setPickListWidth(250);
 }

 private static ListGridField[] getFieldsForSelectItem() {
  ListGridField idField = new ListGridField("id");
  ListGridField nameField = new ListGridField("name");
  ListGridField addField = new ListGridField("address");
  return new ListGridField[] {idField,nameField,addField };
 }
[/CODE]

绘制此网格后,它将呈现选择项的值字段,但我希望呈现名称,因为它是选择项的显示字段

我在动态表单中使用了相同的选择项,但它在那个地方工作得很好,但在网格中工作得不好。 请帮忙。
谢谢

你有没有想过?克里斯托弗·罗德里克没有:你有没有想过?克里斯托弗·罗德里克没有: