【发布时间】:2012-09-13 08:03:49
【问题描述】:
我正在尝试在数据网格列中插入一个文本框。我知道我可以选择 TextCell 或 EditTextCell,但出于某种原因,我选择了 TextBox。
我采用了以下方法
Cell<String> cell = new AbstractCell<String>()
{
@Override
public void render( com.google.gwt.cell.client.Cell.Context context, String value, SafeHtmlBuilder sb )
{
FlowPanel fp = new FlowPanel();
TextBox tb = new TextBox();
tb.setText( value );
fp.add( tb );
sb.appendEscaped( fp.getElement().getString() );
}
};
// Address.
Column<ContactInfo, String> addressColumn = new Column<ContactInfo, String>( cell )
{
@Override
public String getValue( ContactInfo object )
{
return object.getAddress();
}
};
我在这里遇到的问题是我在 UI 而不是文本框中得到以下内容
<div><input class="gwt-TextBox" type="text"></div>
但是当我更换时
sb.appendEscaped( fp.getElement().getString() );
与
sb.appendHtmlConstant( fp.getElement().getInnerHTML() );
我正在获取文本框,但没有填充值。
谁能解释这种行为。如何填充该值?
【问题讨论】:
标签: gwt datagrid gwt-celltable