Hi,
I used render instead of afterrender but i am not getting grid total row...
here is my code can you please check...
protected void Page_Load(object sender, EventArgs e)
{
if (!X.IsAjaxRequest)
{
var store = this.GridPanel1.GetStore();
store.DataSource = new object[] {
new object[] {"1", "1.1", "1.01"},
new object[] {"2", "2.2", "2.02"},
new object[] {"3", "3.3", "3.01"}
};
store.DataBind();
}
}
<script type="text/javascript">
var updateTotal = function (grid) {
var fbar = grid.getBottomToolbar(),
column,
field,
width,
data = {test1: 0, test2: 0, test3: 0},
c,
cs = grid.view.getColumnData();
for (var j = 0, jlen = grid.store.getCount(); j < jlen; j++) {
var r = grid.store.getAt(j);
for (var i = 0, len = cs.length; i < len; i++) {
c = cs[i];
data[c.name] += r.get(c.name);
}
}
for (var i = 0; i < grid.getColumnModel().columns.length; i++) {
column = grid.getColumnModel().columns[i];
field = fbar.findBy(function (item) {
return item.dataIndex === column.dataIndex;
})[0];
c = cs[i];
fbar.remove(field, false);
fbar.insert(i, field);
width = grid.getColumnModel().getColumnWidth(i);
field.setWidth(width - 5);
field.setValue((c.renderer)(data[c.name], {}, {}, 0, i, grid.store));
}
fbar.doLayout();
};
</script>
<ext:Store ID="Store1" runat="server">
<Reader>
<ext:ArrayReader>
<Fields>
<ext:RecordField Name="test1" Type="Int"/>
<ext:RecordField Name="test2" Type="Float"/>
<ext:RecordField Name="test3" Type="Float"/>
</Fields>
</ext:ArrayReader>
</Reader>
</ext:Store>
<ext:GridPanel ID="GridPanel1" runat="server" AutoHeight="true" StoreID="Store1">
<ColumnModel ID="ColumnModel1" runat="server">
<Columns>
<ext:Column Header="Test1" DataIndex="test1" />
<ext:Column Header="Test2" DataIndex="test2" />
<ext:Column Header="Test3" DataIndex="test3" />
</Columns>
</ColumnModel>
<View>
<ext:GridView ID="GridView1" runat="server" ForceFit="true" >
</ext:GridView>
</View>
<Listeners>
<ColumnResize Handler="updateTotal(this);" />
<Render Handler="updateTotal(this);"/>
</Listeners>
<BottomBar>
<ext:Toolbar ID="Toolbar1" runat="server">
<Items>
<ext:TextField
ID="t1"
runat="server"
DataIndex="test1"
Cls="total-field"
Text="-"
>
</ext:TextField>
<ext:TextField
runat="server"
DataIndex="test2"
Cls="total-field"
Text="-"
/>
<ext:TextField
runat="server"
DataIndex="test3"
Cls="total-field"
Text="-"
/>
</Items>
</ext:Toolbar>
</BottomBar>
</ext:GridPanel>