Jan 26, 2015, 8:53 PM
Show or hide columns in a GridPanel.
How can I show or hide columns in a GridPanel?
I have a gridpanel with 5 columns, but only the first should always be displayed depending on the first column to show or hide the rest.
I think it's something simple, but I try to do with the following code does not work:
I have a gridpanel with 5 columns, but only the first should always be displayed depending on the first column to show or hide the rest.
I think it's something simple, but I try to do with the following code does not work:
<ext:GridPanel ID="GridPanel1" runat="server" StoreID="strTest" Title="" TitleCollapse="false" AutoWidth="true" Height="350">
<ColumnModel ID="ColumnModel2" runat="server">
<Columns>
<ext:Column Header="" DataIndex="Field1" Sortable="true" Align="Center"></ext:Column>
<ext:Column Header="" DataIndex="Field2" Sortable="false" Align="Right" Width="100">
<Renderer Fn="showHideColumn2" />
</ext:Column>
<ext:Column Header="" DataIndex="Field3" Sortable="false" Align="Right" Width="100">
<Renderer Fn="showHideColumn3" />
</ext:Column>
<ext:Column Header="" DataIndex="Field4" Sortable="false" Align="Right" Width="100">
<Renderer Fn="showHideColumn4" />
</ext:Column>
<ext:Column Header="" DataIndex="Field5" Sortable="false" Align="Right" Width="100">
<Renderer Fn="showHideColumn5" />
</ext:Column>
</Columns>
</ColumnModel>
</ext:GridPanel>
function showHideColumn2(value, meta, record) {
if (record.data.Field1 == 'Test')
GridPanel1.getColumnModel().SetHidden(1, true);
else
GridPanel1.getColumnModel().SetHidden(1, false);
}
function showHideColumn3(value, meta, record) {
if (record.data.Field1 == 'Test')
GridPanel1.getColumnModel().SetHidden(2, true);
else
GridPanel1.getColumnModel().SetHidden(2, false);
}
function showHideColumn4(value, meta, record) {
if (record.data.Field1 == 'Test')
GridPanel1.getColumnModel().SetHidden(3, true);
else
GridPanel1.getColumnModel().SetHidden(3, false);
}
function showHideColumn5(value, meta, record) {
if (record.data.Field1 == 'Test')
GridPanel1.getColumnModel().SetHidden(4, true);
else
GridPanel1.getColumnModel().SetHidden(4, false);
}
Please your help.