C# 如何过滤Telerik的GridTemplateColumns';s雷达栅格
我的C# 如何过滤Telerik的GridTemplateColumns';s雷达栅格,c#,asp.net,telerik,filtering,radgrid,C#,Asp.net,Telerik,Filtering,Radgrid,我的RadGrid中有两个GridTemplateColumns。默认筛选不适用于我,我想更改它 GridTemplateColumns如下所示: <telerik:GridTemplateColumn FilterControlAltText="Filter Online column" HeaderText="Online" UniqueName="Online"> <ItemTemplate> <asp:CheckBox ID=
RadGrid
中有两个GridTemplateColumn
s。默认筛选不适用于我,我想更改它
GridTemplateColumns如下所示:
<telerik:GridTemplateColumn FilterControlAltText="Filter Online column" HeaderText="Online"
UniqueName="Online">
<ItemTemplate>
<asp:CheckBox ID="chkOnline" runat="server" Checked='<%# CheckForOnline(Eval("ID")) %>'
Enabled="False" />
</ItemTemplate>
<HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="100px" />
</telerik:GridTemplateColumn>
另一个:
<telerik:GridTemplateColumn FilterControlAltText="Filter FileSize column" HeaderText="FileSize"
UniqueName="FileSize" Visible="False">
<ItemTemplate>
<asp:Label ID="lblFileSize" runat="server" Text='<%# Eval("FileSize") %>'></asp:Label>
</ItemTemplate>
<HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn FilterControlAltText="Filter FileSizeChange column" HeaderText="FileSize"
UniqueName="FileSizeChange">
<ItemTemplate>
<asp:Label ID="lblFileSizeChange" runat="server" Text='<%# ChangeFileSize(Eval("FileSize")) %>'></asp:Label>
</ItemTemplate>
<HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
</telerik:GridTemplateColumn>
正如您所看到的,FileSize
TemplateColumn
被禁用,我使用的是FileSizeChange
文件大小字符串类似于(213435)->这个数字显示的是字节。FileSizeChange类似(231MB)/
如何为
联机
和文件大小更改
GridTemplateColumn
s编写筛选 因为这是您正在手动构建的ItemTemplate,所以需要手动筛选。请参阅Telerik文档的本页:要在模板列上使用筛选,您需要设置数据字段,并将该数据字段添加到DataKeyName中
例如:
...
等等等等
如果需要对项目模板列进行筛选,请确保在项目模板列上设置以下属性:
DataField=“FileSize”
AllowFiltering=“true”
AutoPostBackOnFilter=“true”
DataType=“System.String”
如果要隐藏过滤器功能图标,这两个选项是可选的:
ShowFilterIcon=“false”
CurrentFilterFunction=“包含”
还要确保在radgrid上启用了过滤功能
这里有一个关于它的好帖子:
<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false" AllowFilteringByColumn="True">
<MasterTableView DataKeyNames="ID">
<Columns>
<telerik:GridTemplateColumn DataField="ID" FilterControlAltText="Filter Online column" HeaderText="Online" UniqueName="Online">
<ItemTemplate>
<asp:CheckBox ID="chkOnline" runat="server" Checked='<%# CheckForOnline(Eval("ID")) %>' Enabled="False" />
</ItemTemplate>
<HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="100px" />
</telerik:GridTemplateColumn>
...
etc, etc