我正在使用绑定到数据源的Devexpress 9 gridview。
我有3列如下所示,并且在数据绑定后会生成10行。
<dxwgv:GridViewDataTextColumn Caption="New Rate" FieldName="Rate2" VisibleIndex="1">
<DataItemTemplate>
<dxe:ASPxTextBox ID="t_newrate" ClientInstanceName="txt1" runat="server" Width="50px">
<ClientSideEvents KeyPress="function(s, e) {
if(event.keyCode == 13)
{
txt2.Focus();
}}" />
</dxe:ASPxTextBox>
</DataItemTemplate>
<HeaderStyle Font-Bold="True" />
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="New Firm Rate" FieldName="Firm_Rate2" VisibleIndex="2">
<DataItemTemplate>
<dxe:ASPxTextBox ID="t_newfirmrate" runat="server" Width="50px" ClientInstanceName="txt2">
</dxe:ASPxTextBox>
</DataItemTemplate>
<HeaderStyle Font-Bold="True" />
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Item_Id" FieldName="Item_Id" VisibleIndex="3">
<HeaderStyle Font-Bold="True" />
</dxwgv:GridViewDataTextColumn>
当我在第一个文本框中按Enter键时,它会聚焦到下一个文本框,但会聚焦到最后一行中的文本框。为什么不将文本框聚焦在同一行?
任何其他方法来解决这个问题?
答案 0 :(得分:0)
事实上,所有DataRows中的所有ASPxTextBox都具有相同的ClientInstanceName - “txt2”。
有必要为“Firm_Rate2”列的DataItemTemplate中的每个ASPxTextBox保证唯一的ClientInstanceName。
查看E2284 Code Central示例,详细了解如何在DataItemTemplates中实现一对依赖控件。