C# 按列标题排序单击可删除列筛选器

C# 按列标题排序单击可删除列筛选器,c#,asp.net,sorting,filter,columnheader,C#,Asp.net,Sorting,Filter,Columnheader,我有一个gridview表,它有自动生成的列,这些列中的行可以通过单击列名进行排序,因为我启用了“AllowSorting”。我还有一些复选框列表,用户可以选中或取消选中这些复选框来过滤表中的列和表外的列 问题是,当用户将表筛选到他们想要的任何列,然后单击任何列名时,它将按该列排序,但会返回他们筛选出的所有列 我猜我可能需要创建一个带有GridViewSortEventArgs或DataGridViewCellMouseeEventArgs的方法,但是当我有受保护的void方法(对象发送方,Da

我有一个gridview表,它有自动生成的列,这些列中的行可以通过单击列名进行排序,因为我启用了“AllowSorting”。我还有一些复选框列表,用户可以选中或取消选中这些复选框来过滤表中的列和表外的列

问题是,当用户将表筛选到他们想要的任何列,然后单击任何列名时,它将按该列排序,但会返回他们筛选出的所有列

我猜我可能需要创建一个带有GridViewSortEventArgs或DataGridViewCellMouseeEventArgs的方法,但是当我有
受保护的void方法(对象发送方,DataGridViewCellMouseeEventArgs e)
时,它会给我错误信息“找不到类型或命名空间名称,但
GridViewSortEventArgs
不会返回类似的错误。我基本上认为,当您单击列标题时,我应该尝试这样做,这与您在表中选择所需的列后单击搜索按钮时几乎完全相同,因此它将使用过滤的列运行查询,而不是基本上选择*列,然后进行排序

我该怎么办