Telerik RadGrid过滤器

时间:2014-10-08 22:43:49

标签: asp.net telerik telerik-grid radgrid

我使用telerik radgrid制作应用。其中一列设置为模板列:

<telerik:GridTemplateColumn DataField="CustomerID" DataType="System.Int32" FilterControlAltText="Filter CustomerID column" HeaderText="Customer" SortExpression="CustomerID" UniqueName="CustomerID">
                                <InsertItemTemplate>
                                    <asp:DropDownList ID="ddlInsertCustomer" runat="server" DataSourceID="SqlDataCustomers" DataTextField="customerName" DataValueField="id" SelectedValue='<%# Bind("CustomerID") %>'>
                                    </asp:DropDownList>
                                </InsertItemTemplate>
                                <EditItemTemplate>
                                    <asp:DropDownList ID="ddlCustomer" runat="server" DataSourceID="SqlDataCustomers" DataTextField="customerName" DataValueField="id" SelectedValue='<%# Bind("CustomerID") %>'>
                                    </asp:DropDownList>
                                </EditItemTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="CustomerIDLabel" runat="server" Text='<%# Eval("CustomerID") %>'></asp:Label>
                                </ItemTemplate>
                            </telerik:GridTemplateColumn>

在数据绑定的后端,我将此列的文本设置为Customer的名称,我通过linq查询获得单独的表。

当我尝试过滤表期望id而不是名称时,问题在于过滤。有没有人知道如何过滤列中的文本而不是值?

1 个答案:

答案 0 :(得分:0)

也许您最简单的选择是在网格的数据源中包含所需的字段,以便它可以自动过滤:http://www.telerik.com/help/aspnet-ajax/grid-implementing-filtering-for-gridtemplatecolumns.html。本文还提供了您可以查看的自定义方法。

如果您在下拉列表中有所需的数据(例如,作为其值字段),您也可以尝试在客户端上添加过滤器表达式,但我不确定这适用于模板列:http://www.telerik.com/help/aspnet-ajax/grid-client-side-binding-adding-sort-filter-expressions.html。< / p>