【问题标题】:RadGrid apply filter in codebehindRadGrid 在代码隐藏中应用过滤器
【发布时间】:2011-06-30 09:29:10
【问题描述】:

我正在尝试在下拉选择中为 RadGrid 的过滤器设置一个值。

GridColumn column = RadGrid1.MasterTableView.GetColumnSafe("versionId");
column.CurrentFilterFunction = GridKnownFunction.EqualTo;
column.CurrentFilterValue = VersionsCB.SelectedValue;
RadGrid1.Rebind();

这确实会在 versionId 过滤框中填充版本,并将其设置为“EqualTo”,但不会过滤网格。我错过了什么?

编辑:aspx:

<telerik:RadGrid
ID="RadGrid1"
runat="server"
AllowFilteringByColumn="True"
AllowPaging="True"
AllowSorting="True"
AutoGenerateDeleteColumn="True"
AutoGenerateEditColumn="True"
DataSourceID="SqlDataSource1"
GridLines="None"
AllowAutomaticDeletes="True"
AllowAutomaticInserts="True"
AllowAutomaticUpdates="True"
PageSize="50"
Skin="Hay">

    <ClientSettings>
        <Scrolling AllowScroll="False" UseStaticHeaders="False" ScrollHeight="620"/>
    </ClientSettings>

    <MasterTableView DataSourceID="SqlDataSource1" AutoGenerateColumns="False" DataKeyNames="id" CommandItemDisplay="TopAndBottom">

        <Columns>
            <telerik:GridBoundColumn DataField="id" DataType="System.Int32" HeaderText="id" ReadOnly="True" SortExpression="id" UniqueName="id"></telerik:GridBoundColumn>
            .
            .
            .
            <telerik:GridBoundColumn DataField="versionId" DataType="System.Int32" HeaderText="versionId" ReadOnly="False" SortExpression="versionId" UniqueName="versionId"></telerik:GridBoundColumn>
        </Columns>

    </MasterTableView>

    <HeaderContextMenu EnableImageSprites="True" CssClass="GridContextMenu GridContextMenu_Default"></HeaderContextMenu>

</telerik:RadGrid>

【问题讨论】:

  • 你能从你的 aspx 页面分享 RadGrid 的代码吗?

标签: telerik-grid


【解决方案1】:

试试这个:

RadGrid1.MasterTableView.FilterExpression = "([versionId] = "+VersionsCB.SelectedValue+")";    
GridColumn column = RadGrid1.MasterTableView.GetColumnSafe("versionId");    
column.CurrentFilterFunction = GridKnownFunction.EqualTo;    
column.CurrentFilterValue = VersionsCB.SelectedValue;    
RadGrid1.Rebind();

并在 .aspx 文件中修改您的 RadGrid 定义:

<telerik:RadGrid ID="RadGrid1" runat="server" EnableLinqExpressions="False" ...

【讨论】:

  • 我已经尝试过了,但我在RadGrid1.Rebind(); 行收到Expression expected 错误
  • 哦,我确实忘记了最重要的。在 ASPX 文件中修改您的 RadGrid 定义。添加 nableLinqExpressions="False":
猜你喜欢
  • 2014-09-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-22
  • 1970-01-01
  • 2019-03-16
相关资源
最近更新 更多