Implement the column filter option on CellTemplate

1 reply. Last post: August 7, 2013 2:59 AM by Bernard Xiang
Tags :
  • New Discussion
  • New Question
  • New Product Feedback
Hi 
In the IsWebgrid I have a field set as CellTemplate where it is implemented using <tel:RadEditor>. After adding the CellTemplate the filter option for that specific column is not shown. 
How could I implement the filter option for this particular column?

Following is the code extracts on Web grid.
ASPX
 <iswebgrid:WebGrid ID="wgLeaveTypes" runat="server" Width="100%" Height="100%" DataMember="DefaultView" >
                 <RootTable DataKeyField="leave_types_id" RowHeightDefault = "21px" >    
                <ColumnSetSettings GridLineColor="DarkGray" GridLines="Both" ShowHeaders="Yes"   /> 
            <Columns>                   
                     <iswebgrid:WebGridColumn Visible="False" DataMember="leave_types_id" Name="leave_types_id">
                        </iswebgrid:WebGridColumn>
                        <iswebgrid:WebGridColumn Caption="LeaveCode" DataMember="leave_type" Name="leave_type" Width="150px"  >
                          <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                        </iswebgrid:WebGridColumn>
                        <iswebgrid:WebGridColumn Caption="Description" DataMember="description" Name="description" Width="220px">
                          <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                        </iswebgrid:WebGridColumn>
                        <iswebgrid:WebGridColumn Caption="Leave Category" DataMember="leave_category" Name="leave_category" Width="100px" EditType="DropdownList" >
                       <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                        </iswebgrid:WebGridColumn>
                        <iswebgrid:WebGridColumn Caption="Min Yrs of Service" DataMember="minimum_period_of_service" Name="minimum_period_of_service" Width="100px" >
                        <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                        </iswebgrid:WebGridColumn>                      
                         <iswebgrid:WebGridColumn Caption="Max Negative Hours" DataMember="maximum_negative_hours" Name="maximum_negative_hours" Width="100px">
                         <HeaderStyle Height="30px" />
                         <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                        </iswebgrid:WebGridColumn>
                         <iswebgrid:WebGridColumn Caption="Show / Hide Leave Balance" DataMember="show_balance" Name="show_balance" Width="100px" EditType="DropdownList" >
                         <HeaderStyle Height="30px" />
                         <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                        </iswebgrid:WebGridColumn>
                         <iswebgrid:WebGridColumn Caption="Leave Conditions" Name="leave_type_conditions"  Width="240px" ColumnType="Template" DataType="System.String" EditType="MultilineTextbox" FilterKeyField="leave_type_conditions" >
                         <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                                <CellTemplate>   
                    <tel:RadEditor ID="txtLeaveConditionsNew" Content='<%# Container.DataItem("leave_type_conditions") %>'  runat="server" EditModes="Design" 
                                EnableResize="false" Height="150px" Width="300px" Enabled="false"  EnableViewState="False">
                                <Languages>
                                    <tel:SpellCheckerLanguage Code="en-AU" Title="English" />
                                </Languages>
                                <Tools >
                                    <tel:EditorToolGroup>
                                        <tel:EditorTool Name="AjaxSpellCheck" Visible="false" />
                                        <tel:EditorTool Name="JustifyLeft" Visible="false" />
                                        <tel:EditorTool Name="JustifyCenter" Visible="false" />
                                        <tel:EditorTool Name="JustifyRight" Visible="false" />
                                        <tel:EditorTool Name="Bold" Visible="false" />
                                        <tel:EditorTool Name="Italic" Visible="false" />
                                        <tel:EditorTool Name="Underline" Visible="false" />
                                        <tel:EditorTool Name="InsertUnorderedList" Visible="false" />
                                        <tel:EditorTool Name="InsertOrderedList" Visible="false" /> 
                                        <tel:EditorTool name="Undo" Visible="false" />
                                        <tel:EditorTool name="Redo" Visible="false" />                                       
                                    </tel:EditorToolGroup>
                                </Tools>
                            <Modules>
                                    <tel:EditorModule Enabled="false" Name="RadEditorStatistics" />
                                </Modules>
                           </tel:RadEditor>
                                              </CellTemplate>
                        </iswebgrid:WebGridColumn>
                           <iswebgrid:WebGridColumn Caption="On Leave" Name="on_leave"  ColumnType="Template" Width="80px"  DataType="System.Boolean" EditType="NoEdit">
                          <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                                 <CellTemplate>    
                                <asp:RadioButton ID="rdbOnLeave" runat="server" Checked='<%# Eval("on_leave").ToString().Equals("1")  %>' Enabled="false" />       
                                </CellTemplate>
                        </iswebgrid:WebGridColumn>
                         <iswebgrid:WebGridColumn Caption="Sick Leave" Name="sick_leave" Width="80px" ColumnType="Template" DataType="System.Boolean" EditType="NoEdit">
                         <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                                  <CellTemplate>    
                                <asp:RadioButton ID="rdbSickLeave" runat="server" Checked='<%# Eval("sick_leave").ToString().Equals("1")  %>' Enabled="false" />       
                                </CellTemplate>
                        </iswebgrid:WebGridColumn>  
                          <iswebgrid:WebGridColumn Caption="Do Not Show" Name="do_not_show" Width="80px" ColumnType="Template" DataType="System.Boolean" EditType="NoEdit">
                    <CellStyle HorizontalAlign="Center">
                                </CellStyle>
                                  <CellTemplate>    
                                <asp:RadioButton ID="rdbDOLeave" runat="server" Checked='<%# Eval("do_not_show").ToString().Equals("1")  %>' Enabled="false"/>       
                                                                </CellTemplate>
                        </iswebgrid:WebGridColumn>                        
                        <iswebgrid:WebGridColumn Caption="In Use" DataMember="is_in_use" Name="is_in_use" ColumnType="CheckBox" EditType="NoEdit" Width="45px">
                        </iswebgrid:WebGridColumn>                                              
                        </Columns>
           </RootTable>
           <FlyPostBackSettings PostInputControls="True"></FlyPostBackSettings>
              <LayoutSettings AllowFilter="Yes">
                    <ClientSideEvents OnRowSelect="wgGrid_OnRowSelect" OnCellDblClick="wgGrid_OnCellDblClick">
                    </ClientSideEvents>
                </LayoutSettings> 
              </iswebgrid:WebGrid>  

.vb

 Protected Sub wgLeaveTypes_InitializeLayout(ByVal sender As Object, ByVal e As ISNet.WebUI.WebGrid.LayoutEventArgs) Handles wgLeaveTypes.InitializeLayout
        SetWebGrid(wgLeaveTypes, Page)

        wgLeaveTypes.LayoutSettings.AllowGrouping = ISNet.WebUI.WebGrid.Grouping.No
        wgLeaveTypes.LayoutSettings.GroupByBoxVisible = False
        Dim dt As New DataTable
        dt.Columns.Add("Text")
        dt.Columns.Add("Value")
        Dim row As DataRow
        row = dt.NewRow
        row(0) = "Yes"
        row(1) = "Y"
        dt.Rows.Add(row)
        row = dt.NewRow
        row(0) = "No"
        row(1) = "N"
        dt.Rows.Add(row)

        Dim wv1 As ISNet.WebUI.WebGrid.WebValueList = wgLeaveTypes.RootTable.Columns.GetNamedItem("is_in_use").ValueList
        wv1 = wgLeaveTypes.RootTable.Columns.GetNamedItem("leave_category").ValueList
        wv1.DataSource = ddlLeaveCategory.Items
        wv1.DataTextField = "Text"
        wv1.DataValueField = "Value"

        wv1 = wgLeaveTypes.RootTable.Columns.GetNamedItem("show_balance").ValueList
        wv1.DataSource = ddlShowHideLeaveBalance.Items
        wv1.DataTextField = "Text"
        wv1.DataValueField = "Text"
       
    End Sub


Thank you.
1 attachment
All times are GMT -5. The time now is 7:43 PM.
Previous Next