Advertisement
Guest User

Untitled

a guest
Oct 4th, 2012
327
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ASP 9.84 KB | None | 0 0
  1. <script runat="server">
  2.     public class Company
  3.     {
  4.         public int ID { get; set; }
  5.         public string Name { get; set; }
  6.         public double Price { get; set; }
  7.         public double Change { get; set; }
  8.         public double PctChange { get; set; }
  9.         public DateTime LastChange { get; set; }
  10.     }
  11.    
  12.     protected void Page_Load(object sender, EventArgs e)
  13.     {
  14.         if (!X.IsAjaxRequest)
  15.         {
  16.             this.BindData();
  17.         }
  18.     }
  19.  
  20.     private void BindData()
  21.     {
  22.         this.GridPanel1.Store.Primary.DataSource = this.GetData();
  23.         this.GridPanel1.Store.Primary.DataBind();
  24.     }
  25.  
  26.     private List<Company> GetData()
  27.     {
  28.         return new List<Company>
  29.         {
  30.             new Company { ID = 1, Name = "3m Co", Price = 71.72, Change = 0.02, PctChange = 0.03, LastChange = DateTime.Now },
  31.             new Company { ID = 2, Name = "Alcoa Inc", Price = 29.01, Change = 0.42, PctChange = 1.47, LastChange = DateTime.Now },
  32.             new Company { ID = 3, Name = "Altria Group Inc", Price = 83.81, Change = 0.28, PctChange = 0.34, LastChange = DateTime.Now },
  33.             new Company { ID = 4, Name = "American Express Company", Price = 52.55, Change = 0.01, PctChange = 0.02, LastChange = DateTime.Now },
  34.             new Company { ID = 5, Name = "American International Group, Inc.", Price = 64.13, Change = 0.31, PctChange = 0.49, LastChange = DateTime.Now },
  35.             new Company { ID = 6, Name = "AT&T Inc.", Price = 31.61, Change = -0.48, PctChange = -1.54, LastChange = DateTime.Now },
  36.             new Company { ID = 7, Name = "Boeing Co.", Price = 75.43, Change = 0.53, PctChange = 0.71, LastChange = DateTime.Now },
  37.             new Company { ID = 8, Name = "Caterpillar Inc.", Price = 67.27, Change = 0.92, PctChange = 1.39, LastChange = DateTime.Now },
  38.             new Company { ID = 9, Name = "Citigroup, Inc.", Price = 49.37, Change = 0.02, PctChange = 0.04, LastChange = DateTime.Now },
  39.             new Company { ID = 10, Name = "E.I. du Pont de Nemours and Company", Price = 40.48, Change = 0.51, PctChange = 1.28, LastChange = DateTime.Now },
  40.             new Company { ID = 11, Name = "Exxon Mobil Corp", Price = 68.1, Change = -0.43, PctChange = -0.64, LastChange = DateTime.Now },
  41.             new Company { ID = 12, Name = "General Electric Company", Price = 34.14, Change = -0.08, PctChange = -0.23, LastChange = DateTime.Now },
  42.             new Company { ID = 13, Name = "General Motors Corporation", Price = 30.27, Change = 1.09, PctChange = 3.74, LastChange = DateTime.Now },
  43.             new Company { ID = 14, Name = "Hewlett-Packard Co.", Price = 36.53, Change = -0.03, PctChange = -0.08, LastChange = DateTime.Now },
  44.             new Company { ID = 15, Name = "Honeywell Intl Inc", Price = 38.77, Change = 0.05, PctChange = 0.13, LastChange = DateTime.Now },
  45.             new Company { ID = 16, Name = "Intel Corporation", Price = 19.88, Change = 0.31, PctChange = 1.58, LastChange = DateTime.Now },
  46.             new Company { ID = 17, Name = "International Business Machines", Price = 81.41, Change = 0.44, PctChange = 0.54, LastChange = DateTime.Now },
  47.             new Company { ID = 18, Name = "Johnson & Johnson", Price = 64.72, Change = 0.06, PctChange = 0.09, LastChange = DateTime.Now },
  48.             new Company { ID = 19, Name = "JP Morgan & Chase & Co", Price = 45.73, Change = 0.07, PctChange = 0.15, LastChange = DateTime.Now },
  49.             new Company { ID = 20, Name = "McDonald\"s Corporation", Price = 36.76, Change = 0.86, PctChange = 2.40, LastChange = DateTime.Now },
  50.             new Company { ID = 21, Name = "Merck & Co., Inc.", Price = 40.96, Change = 0.41, PctChange = 1.01, LastChange = DateTime.Now },
  51.             new Company { ID = 22, Name = "Microsoft Corporation", Price = 25.84, Change = 0.14, PctChange = 0.54, LastChange = DateTime.Now },
  52.             new Company { ID = 23, Name = "Pfizer Inc", Price = 27.96, Change = 0.4, PctChange = 1.45, LastChange = DateTime.Now },
  53.             new Company { ID = 24, Name = "The Coca-Cola Company", Price = 45.07, Change = 0.26, PctChange = 0.58, LastChange = DateTime.Now },
  54.             new Company { ID = 25, Name = "The Home Depot, Inc.", Price = 34.64, Change = 0.35, PctChange = 1.02, LastChange = DateTime.Now },
  55.             new Company { ID = 26, Name = "The Procter & Gamble Company", Price = 61.91, Change = 0.01, PctChange = 0.02, LastChange = DateTime.Now },
  56.             new Company { ID = 27, Name = "United Technologies Corporation", Price = 63.26, Change = 0.55, PctChange = 0.88, LastChange = DateTime.Now },
  57.             new Company { ID = 28, Name = "Verizon Communications", Price = 35.57, Change = 0.39, PctChange = 1.11, LastChange = DateTime.Now },
  58.             new Company { ID = 29, Name = "Wal-Mart Stores, Inc.", Price = 45.45, Change = 0.73, PctChange = 1.63, LastChange = DateTime.Now }
  59.         };
  60.     }
  61.  
  62.     [DirectMethod(Namespace = "CompanyX")]
  63.     public void AfterEdit(int id, string field, string oldValue, string newValue, object customer)
  64.     {
  65.         string message = "<b>Property:</b> {0}<br /><b>Field:</b> {1}<br /><b>Old Value:</b> {2}<br /><b>New Value:</b> {3}";
  66.  
  67.         // Send Message...
  68.         X.Msg.Notify("Edit Record #" + id.ToString(), string.Format(message, id, field, oldValue, newValue)).Show();
  69.  
  70.         this.GridPanel1.Store.Primary.CommitChanges();
  71.     }
  72. </script>
  73.  
  74. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  75.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  76.  
  77. <html xmlns="http://www.w3.org/1999/xhtml">
  78. <head id="Head1" runat="server">
  79.     <title>Simple Array Grid - Ext.NET Examples</title>
  80.  
  81.     <script type="text/javascript">
  82.         var template = '<span style="color:{0};">{1}</span>';
  83.  
  84.         var change = function (value) {
  85.             return String.format(template, (value > 0) ? "green" : "red", value);
  86.         };
  87.  
  88.         var pctChange = function (value) {
  89.             return String.format(template, (value > 0) ? "green" : "red", value + "%");
  90.         };
  91.  
  92.         var startEditing = function (e) {
  93.             if (e.getKey() === e.ENTER) {
  94.                 var grid = GridPanel1,
  95.                     record = grid.getSelectionModel().getSelected(),
  96.                     index = grid.store.indexOf(record);
  97.  
  98.                 grid.startEditing(index, 1);
  99.             }
  100.         };
  101.  
  102.         var afterEdit = function (e) {
  103.             /*
  104.             Properties of 'e' include:
  105.             e.grid - This grid
  106.             e.record - The record being edited
  107.             e.field - The field name being edited
  108.             e.value - The value being set
  109.             e.originalValue - The original value for the field, before the edit.
  110.             e.row - The grid row index
  111.             e.column - The grid column index
  112.             */
  113.  
  114.             // Call DirectMethod
  115.             CompanyX.AfterEdit(e.record.data.ID, e.field, e.originalValue, e.value, e.record.data);
  116.         };
  117.     </script>
  118. </head>
  119. <body>
  120.     <ext:ResourceManager ID="ResourceManager1" runat="server" RemoveViewState="true" IDMode="Explicit" ScriptMode="Debug" SourceFormatting="True"/>
  121.    
  122.     <h1>Editable GridPanel With Save To [DirectMethod]</h1>
  123.    
  124.     <ext:GridPanel
  125.         ID="GridPanel1"
  126.         runat="server"
  127.         Title="Editable GridPanel"
  128.         StripeRows="true"
  129.         TrackMouseOver="true"
  130.         Width="600"
  131.         Height="350"
  132.         AutoExpandColumn="Name">
  133.         <Store>
  134.             <ext:Store ID="Store1" runat="server">
  135.                 <Reader>
  136.                     <ext:JsonReader IDProperty="ID">
  137.                         <Fields>
  138.                             <ext:RecordField Name="ID" Type="Int" />
  139.                             <ext:RecordField Name="Name" />
  140.                             <ext:RecordField Name="Price" Type="Float" />
  141.                             <ext:RecordField Name="Change" Type="Float" />
  142.                             <ext:RecordField Name="PctChange" Type="Float" />
  143.                             <ext:RecordField Name="LastChange" Type="Date" />
  144.                         </Fields>
  145.                     </ext:JsonReader>
  146.                 </Reader>
  147.             </ext:Store>
  148.         </Store>
  149.         <Listeners>
  150.             <KeyDown Fn="startEditing" />
  151.             <AfterEdit Fn="afterEdit" />
  152.         </Listeners>
  153.         <ColumnModel ID="ColumnModel1" runat="server">
  154.             <Columns>
  155.                 <ext:Column Header="ID" DataIndex="ID" Width="35" />
  156.                 <ext:Column ColumnID="Name" Header="Name" DataIndex="Name">
  157.                     <Editor>
  158.                         <ext:TextField ID="TextField1" runat="server" />
  159.                     </Editor>
  160.                 </ext:Column>
  161.                 <ext:Column Header="Price" DataIndex="Price">
  162.                     <Renderer Format="UsMoney" />
  163.                     <Editor>
  164.                         <ext:TextField ID="TextField2" runat="server" />
  165.                     </Editor>
  166.                 </ext:Column>
  167.                 <ext:Column Header="Change" DataIndex="Change">
  168.                     <Renderer Fn="change" />
  169.                     <Editor>
  170.                         <ext:SpinnerField ID="txtQty" runat="server" AllowBlank="false" MinValue="1">
  171.                             <%--<Listeners>
  172.                                 <BeforeShow Handler="txtQty.setMaxValue(record.data.Price);" />
  173.                             </Listeners>--%>
  174.                         </ext:SpinnerField>
  175.                     </Editor>
  176.                 </ext:Column>
  177.             </Columns>
  178.         </ColumnModel>
  179.         <SelectionModel>
  180.             <ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true" />
  181.         </SelectionModel>
  182.         <Listeners>
  183.             <BeforeEdit Handler="
  184.                 if (e.field == 'Change')
  185.                     txtQty.setMaxValue(e.record.data.Price);"></BeforeEdit>
  186.         </Listeners>
  187.     </ext:GridPanel>          
  188. </body>
  189. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement