Jul 29, 2011, 6:15 PM
Help with JSON and Dates, driving me crazy, sample included
Guys, please run my sample and tell me why is the GridPanel highlighting the date column when the data did not change, I have tried millions of tricks but nothing seems to fix this.
Thank you
Thank you
<%@ Page Language="C#" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!X.IsAjaxRequest)
{
this.Store1.DataSource = this.Data;
this.Store1.DataBind();
}
}
protected void btSerialize_Click(object sender, DirectEventArgs e)
{
DateTime dte = new DateTime(2011, 7, 29, 0, 0, 0);
GridPanel1.AddScript("{0}.getSelectionModel().getSelected().set('{1}', {2});", GridPanel1.ClientID, "created", JSON.Serialize(dte));
}
private object[] Data
{
get
{
DateTime dte = new DateTime(2011, 7, 29, 0, 0, 0);
return new object[]
{
new object[] { dte, "3m Co", 71.72, 0.02, 0.03, "9/1 12:00am" },
new object[] { dte, "Alcoa Inc", 29.01, 0.42, 1.47, "9/1 12:00am" },
new object[] { dte, "Altria Group Inc", 83.81, 0.28, 0.34, "9/1 12:00am" },
new object[] { dte, dte, "American Express Company", 52.55, 0.01, 0.02, "9/1 12:00am" },
new object[] { dte, "American International Group, Inc.", 64.13, 0.31, 0.49, "9/1 12:00am" },
new object[] { dte, "AT&T Inc.", 31.61, -0.48, -1.54, "9/1 12:00am" },
new object[] { dte, "Boeing Co.", 75.43, 0.53, 0.71, "9/1 12:00am" },
new object[] { dte, "Caterpillar Inc.", 67.27, 0.92, 1.39, "9/1 12:00am" },
new object[] { dte, "Citigroup, Inc.", 49.37, 0.02, 0.04, "9/1 12:00am" },
new object[] { dte, "E.I. du Pont de Nemours and Company", 40.48, 0.51, 1.28, "9/1 12:00am" },
new object[] { dte, "Exxon Mobil Corp", 68.1, -0.43, -0.64, "9/1 12:00am" },
new object[] { dte, "General Electric Company", 34.14, -0.08, -0.23, "9/1 12:00am" },
new object[] { dte, "General Motors Corporation", 30.27, 1.09, 3.74, "9/1 12:00am" },
new object[] { dte, "Hewlett-Packard Co.", 36.53, -0.03, -0.08, "9/1 12:00am" },
new object[] { dte, "Honeywell Intl Inc", 38.77, 0.05, 0.13, "9/1 12:00am" },
new object[] { dte, "Intel Corporation", 19.88, 0.31, 1.58, "9/1 12:00am" },
new object[] { dte, "International Business Machines", 81.41, 0.44, 0.54, "9/1 12:00am" },
new object[] { dte, "Johnson & Johnson", 64.72, 0.06, 0.09, "9/1 12:00am" },
new object[] { dte, "JP Morgan & Chase & Co", 45.73, 0.07, 0.15, "9/1 12:00am" },
new object[] { dte, "McDonald\"s Corporation", 36.76, 0.86, 2.40, "9/1 12:00am" },
new object[] { dte, "Merck & Co., Inc.", 40.96, 0.41, 1.01, "9/1 12:00am" },
new object[] { dte, "Microsoft Corporation", 25.84, 0.14, 0.54, "9/1 12:00am" },
new object[] { dte, "Pfizer Inc", 27.96, 0.4, 1.45, "9/1 12:00am" },
new object[] { dte, "The Coca-Cola Company", 45.07, 0.26, 0.58, "9/1 12:00am" },
new object[] { dte, "The Home Depot, Inc.", 34.64, 0.35, 1.02, "9/1 12:00am" },
new object[] { dte, "The Procter & Gamble Company", 61.91, 0.01, 0.02, "9/1 12:00am" },
new object[] { dte, "United Technologies Corporation", 63.26, 0.55, 0.88, "9/1 12:00am" },
new object[] { dte, "Verizon Communications", 35.57, 0.39, 1.11, "9/1 12:00am" },
new object[] { dte, "Wal-Mart Stores, Inc.", 45.45, 0.73, 1.63, "9/1 12:00am" }
};
}
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Simple Array Grid - Ext.NET Examples</title>
</head>
<body>
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<h1>Simple Array Grid</h1>
<ext:GridPanel
ID="GridPanel1"
runat="server"
StripeRows="true"
Title="Array Grid"
TrackMouseOver="true"
Width="600"
Height="350"
AutoExpandColumn="company">
<Store>
<ext:Store ID="Store1" runat="server">
<Reader>
<ext:ArrayReader>
<Fields>
<ext:RecordField Name="created" Type="Date" DateFormat="yyyy-MM-ddTH:mm:ss" />
<ext:RecordField Name="company" />
<ext:RecordField Name="price" Type="Float" />
<ext:RecordField Name="change" Type="Float" />
<ext:RecordField Name="pctChange" Type="Float" />
<ext:RecordField Name="lastChange" Type="Date" DateFormat="M/d hh:mmtt" />
</Fields>
</ext:ArrayReader>
</Reader>
</ext:Store>
</Store>
<ColumnModel ID="ColumnModel1" runat="server">
<Columns>
<ext:DateColumn Header="Created" DataIndex="created" />
<ext:Column ColumnID="Company" Header="Company" DataIndex="company" />
<ext:Column Header="Price" DataIndex="price">
<Renderer Format="UsMoney" />
</ext:Column>
<ext:DateColumn Header="Last Updated" DataIndex="lastChange" />
</Columns>
</ColumnModel>
<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true" />
</SelectionModel>
<BottomBar>
<ext:Toolbar runat="server">
<Items>
<ext:Button runat="server" ID="btSerialize" Text="Apply JSON Serialized Date" Icon="Disk">
<DirectEvents>
<Click OnEvent="btSerialize_Click">
<EventMask ShowMask="true" />
</Click>
</DirectEvents>
</ext:Button>
</Items>
</ext:Toolbar>
</BottomBar>
</ext:GridPanel>
<ext:Label runat="server" Text="Update grid with new(same) data using the same data will highlight the date cell."></ext:Label>
</body>
</html>