code in aspx page
<telerik:RadGrid
runat="server"
ID="gvSiteInventory"
AllowPaging="false"
SelectionMode="FullRowSelect"
AllowMultiRowSelection="true"
ShowHeader="True"
AllowSorting="True"
AllowFilteringByColumn="true"
EnableHeaderContextMenu="true"
FilterType="HeaderContext"
AutoGenerateColumns="false" GroupingEnabled="false"
EnableHeaderContextFilterMenu="true"
OnFilterCheckListItemsRequested="gvSiteInventory_FilterCheckListItemsRequested">
<MasterTableView AllowPaging="True" PageSize="50">
<Columns>
<telerik:GridBoundColumn DataField="SiteName" AllowFiltering="true"
UniqueName="SiteName1" HeaderText="Site Name" AllowSorting="true" >
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Department"
UniqueName="Department1" HeaderText="Department"
AllowSorting="true" AllowFiltering="true" FilterCheckListEnableLoadOnDemand="true" >
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
Code in cs file
protected void Page_Load(object sender, EventArgs e)
{
BindGridView();
}
private void BindGridView()
{
gvSiteInventory.DataSource = Utilities.GetSiteInventoryDetails();
gvSiteInventory.DataBind();
}
protected void gvSiteInventory_FilterCheckListItemsRequested(object sender, GridFilterCheckListItemsRequestedEventArgs e)
{
string DataField = (e.Column as IGridDataColumn).GetActiveDataField();
e.ListBox.DataSource = Utilities.GetSiteInventoryDetails();
e.ListBox.DataKeyField = DataField;
e.ListBox.DataTextField = DataField;
e.ListBox.DataValueField = DataField;
e.ListBox.DataBind();
}
For SiteName column only contain filter with sorting is required and for Department column checkbox filter with sorting only required.
Thanks.