ASP.NET GridView 在列标题中进行过滤

问题描述 投票:0回答:2

我需要使用允许在列标题中进行过滤的网格。 我知道有一些第三方组件需要花钱。 我正在寻找可在项目中使用的免费/开源的东西。 有谁知道 GridView 可以做到这一点吗?

asp.net gridview datagrid
2个回答
2
投票

一种方法是在标题中放置下拉列表,并在 selectedchanged 事件上,基于此重新绑定网格。


1
投票

我也需要一些跨列的过滤和排序,所以我环顾四周并将其放在一起。 请参阅此处和此处。 它是动态的,标记看起来像这样,代码隐藏有 1000 多行 - 不确定我是否可以将其发布在这里。

 <%@ Page Title="" Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false"
    CodeFile="Default.aspx.vb" Inherits="_Default" EnableViewState="True"%>
   <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
       <link href="AdminCSS.css" rel="stylesheet" type="text/css" />
       <asp:DropDownList ID="ddl1" runat="server" AutoPostBack="True">
       </asp:DropDownList>
       <asp:DropDownList ID="ddl2" runat="server" AutoPostBack="True">
           <asp:ListItem Value="BASE TABLE">Only tables</asp:ListItem>
           <asp:ListItem Value="VIEW">Only Views</asp:ListItem>
           <asp:ListItem Selected="True" Value="%">Tables and Views</asp:ListItem>
       </asp:DropDownList>
       <asp:DropDownList ID="ddl3" runat="server" AutoPostBack="True">
           <asp:ListItem>SELECT TOP 1</asp:ListItem>
           <asp:ListItem Selected="True">SELECT TOP 50</asp:ListItem>
           <asp:ListItem>SELECT TOP 200</asp:ListItem>
           <asp:ListItem>SELECT TOP 1000</asp:ListItem>
           <asp:ListItem>SELECT TOP 5000</asp:ListItem>
           <asp:ListItem>SELECT</asp:ListItem>
       </asp:DropDownList>
       <asp:CheckBox ID="chkSideways" AutoPostBack="true" Text="Show Tabs Sideways" runat="server">
       </asp:CheckBox>
       <asp:Label ID="lblTbleCount" runat="server" Text="" Style="margin-left: 30px"></asp:Label>
   </asp:Content>
© www.soinside.com 2019 - 2024. All rights reserved.