Hi Daniil,
please see my simplified example, and yes here it does always select the new record which did not happen in 2.0, click the lorry icon to copy:
<script runat="server" >
Protected Sub Page_Load(sender As Object, e As EventArgs)
If Not ExtNet.IsAjaxRequest Then
Dim store As Store = Me.GridPanel1.GetStore()
store.DataSource = New Object() {New Object() {"test1", "test2", "test3"}, New Object() {"test4", "test5", "test6"}, New Object() {"test7", "test8", "test9"}}
store.DataBind()
End If
End Sub
</script>
<%@ Page Language="VB" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<!DOCTYPE html>
<html>
<head id="Head1" runat="server">
<title>Ext.NET v2 Example</title>
<script>
function addData(record) {
var oldTest1 = record.get('test1')
var newRecord = record.copy();
// newRecord.data.test1 = <img src='ajaxpreloader.gif />
App.GridPanel2.store.insert(0, newRecord.data);
// calling a webservice and showing an ajax preloader in the column test1.
//webservice finished, set test1 to its old value:
newRecord = App.GridPanel2.getStore().getById(record.data.test1);
newRecord.set("test1",oldTest1);
newRecord.commit();
}
</script>
</head>
<body>
<form id="Form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Button ID="Button1" runat="server" Text="Add" Handler="App.GridPanel1.getStore().add({});" />
<ext:GridPanel ID="GridPanel1" runat="server">
<Store>
<ext:Store ID="Store1" runat="server">
<Model>
<ext:Model ID="Model1" runat="server" >
<Fields>
<ext:ModelField Name="test1" />
<ext:ModelField Name="test2" />
<ext:ModelField Name="test3" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<ColumnModel ID="ColumnModel1" runat="server">
<Columns>
<ext:Column ID="Column1" runat="server" Text="Test1" DataIndex="test1" />
<ext:Column ID="Column2" runat="server" Text="Test2" DataIndex="test2" />
<ext:Column ID="Column3" runat="server" Text="Test3" DataIndex="test3" />
<ext:ImageCommandColumn ID="CommandColumn5" runat="server" Width="30">
<Commands>
<ext:ImageCommand Icon="LorryGo" CommandName="addToSecondGrid">
<ToolTip Text="Add to second Grid" />
</ext:ImageCommand>
</Commands>
<Listeners>
<Command Handler="addData(record);" />
</Listeners>
</ext:ImageCommandColumn>
</Columns>
</ColumnModel>
</ext:GridPanel>
<ext:GridPanel ID="GridPanel2" runat="server" >
<Store>
<ext:Store ID="Store2" runat="server" >
<Model>
<ext:Model ID="Model2" runat="server" IDProperty="test1">
<Fields>
<ext:ModelField Name="test1" />
<ext:ModelField Name="test2" />
<ext:ModelField Name="test3" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<ColumnModel ID="ColumnModel2" runat="server">
<Columns>
<ext:Column ID="Column4" runat="server" Text="Test1" DataIndex="test1" />
<ext:Column ID="Column5" runat="server" Text="Test2" DataIndex="test2" />
<ext:Column ID="Column6" runat="server" Text="Test3" DataIndex="test3" />
</Columns>
</ColumnModel>
</ext:GridPanel>
</form>
</body>
</html>