Feb 15, 2012, 6:08 PM
GridPanel AfterEdit Direct Event and Original Value
How do I get the original value for a row that was edited in a DirectEvent? I would like the original values to be passed as ExtraParams to the DirectEvent object if possible.
<ext:GridPanel ID="gridPanelSettings" LabelAlign="Top" runat="server" StripeRows="true">
<Store>
<ext:Store ID="storeAccountSettings" runat="server">
<Reader>
<ext:JsonReader>
<Fields>
<ext:RecordField Name="AccountID" />
<ext:RecordField Name="EquityName" />
<ext:RecordField Name="LotSize" />
<ext:RecordField Name="TradesEnabled" Type="Boolean" />
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
</Store>
<Plugins>
<ext:RowEditor ID="RowEditor1" runat="server" SaveText="Update">
<DirectEvents>
<AfterEdit OnEvent="gridPanelSettings_AfterRowEdit">
<ExtraParams>
<ext:Parameter Name="AccountID" Value="Ext.encode(#{GridPanelSettings}.getSelectionModel().getSelected().get('AccountID'))" Mode="Raw" />
<ext:Parameter Name="LotSize" Value="Ext.encode(#{GridPanelSettings}.getSelectionModel().getSelected().get('LotSize'))" Mode="Raw" />
<ext:Parameter Name="TradesEnabled" Value="Ext.encode(#{GridPanelSettings}.getSelectionModel().getSelected().get('TradesEnabled'))" Mode="Raw" />
</ExtraParams>
</AfterEdit>
</DirectEvents>
</ext:RowEditor>
</Plugins>
<View>
<ext:GridView ID="GridView1" runat="server" ForceFit="true" MarkDirty="false" />
</View>
<ColumnModel ID="ColumnModel2" runat="server">
<Columns>
<ext:RowNumbererColumn />
<ext:Column ColumnID="colName" Header="Symbol" Width="150" DataIndex="EquityName" Editable="false" />
<ext:Column ColumnID="colLotSize" Header="Lot Size (K)" Width="150" DataIndex="LotSize"><Editor><ext:TextField ID="txtLotSize" runat="server" /></Editor></ext:Column>
<ext:BooleanColumn ColumnID="colTradesEnabled" Header="Trades Enabled?" FalseText="No" TrueText="Yes" DataIndex="TradesEnabled"><Editor><ext:Checkbox ID="Checkbox3" runat="server" /></Editor></ext:BooleanColumn>
</Columns>
</ColumnModel>
<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel2" runat="server" SingleSelect="true" />
</SelectionModel>
<LoadMask ShowMask="true" />
</ext:GridPanel>