Hi,
I downloaded your sample and made the following modifications:
1. There was an Assembly Reference to "ExtNetSampleControl". This Assembly was not included, the Project was throwing Build errors, so I removed the Assembly Reference.
2. Within the markup, you configured <cc1:CustomNumeric> Controls. I'm assuming this "cc1" Control was in the "ExtNetSampleControl" Assembly. I removed the markup for this control as it did not appear necessary for reproducing the problem.
3. Same with <cc1:CustomGrid>. Was not included, so I changed to <ext:GridPanel>.
4. Removed MasterPage as it did not appear necessary for reproducing the problem.
5. Removed CodeBehind .cs file as it did not appear necessary for reproducing the problem.
6. Removed inner DropDownField and second inner GridPanel as it did not appear necessary for reproducing the problem.
7. Removed call to second ".GetData2" Method, as it did not appear necessary for reproducing the problem.
8. Removed a lot of other unnecessary code and was able to simplify your sample down to <100 lines of code, and still was able to reproduce the original JavaScript error.
Here's the sample we're now working with.
Example
<%@ Page Language="C#" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!X.IsAjaxRequest)
{
this.GridPanel1.DirectEvents.AfterEdit.ExtraParams.Add(new Ext.Net.Parameter("ColumnName", "e.field", ParameterMode.Raw));
this.BindData();
}
this.GridPanel1.DirectEvents.AfterEdit.Event += GridPanel1_AfterEdit;
}
protected void GridPanel1_AfterEdit(object sender, DirectEventArgs e)
{
if (e.ExtraParams["ColumnName"] == "Name")
{
this.BindData();
this.GridPanel1.RefreshView();
this.GridPanel1.Reconfigure();
}
}
private void BindData()
{
this.GridPanel1.Store.Primary.DataSource = this.GetData();
this.GridPanel1.Store.Primary.DataBind();
}
private List<Company> GetData()
{
return new List<Company>
{
new Company { ID = 1, Name = "3m Co" },
new Company { ID = 2, Name = "Alcoa Inc" },
new Company { ID = 3, Name = "Altria Group Inc" },
new Company { ID = 4, Name = "American Express Company" },
new Company { ID = 5, Name = "American International Group, Inc." },
new Company { ID = 6, Name = "AT&T Inc." },
new Company { ID = 7, Name = "Boeing Co." },
new Company { ID = 8, Name = "Caterpillar Inc." },
new Company { ID = 9, Name = "Citigroup, Inc." },
new Company { ID = 10, Name = "E.I. du Pont de Nemours and Company" },
};
}
public class Company
{
public int ID { get; set; }
public string Name { get; set; }
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head runat="server">
<title>Ext.NET Example</title>
</head>
<body>
<form runat="server">
<ext:ResourceManager runat="server" />
<ext:GridPanel
ID="GridPanel1"
runat="server"
Title="Example"
Height="500"
Width="600"
AutoExpandColumn="Name">
<Store>
<ext:Store runat="server">
<Reader>
<ext:JsonReader IDProperty="ID">
<Fields>
<ext:RecordField Name="ID" Type="Int" />
<ext:RecordField Name="Name" />
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
</Store>
<ColumnModel runat="server">
<Columns>
<ext:Column Header="ID" DataIndex="ID" Editable="false" />
<ext:Column Header="Name" DataIndex="Name">
<Editor>
<ext:TextField runat="server" />
</Editor>
</ext:Column>
</Columns>
</ColumnModel>
</ext:GridPanel>
</form>
</body>
</html>
At this point we now have a clean and simplified .aspx code sample which concisely and consistently reproduces the problem. We should be able to follow-up with the solution/fix shortly.