ASP.NET GridView中使用搜索框(SearchableGridView)
介绍:
我正在搜寻一种方法实现在ASP.NET GridView控件包含搜索框。我找不到一个完美的解决方案,决定自己去实现它。这里所以写出我的解决方案。
为什么使用这种方案?
您可以使用此种方案和实施行的表格过滤变得非常容易。搜索和过滤操作可以由公正处理的搜索事件引发。此外,该GridView还可以设置选项以显示行序列号,行的总数,并显示页眉和页脚即使没有行在GridView可用。(默认情况下,页眉和页脚是隐藏,当GridView没有数据行。)
该解决方案
我做了什么
1.我扩展GridView和创建了一个SearchableGridView类。
2.添加了一个TemplateColumn显示行数。
3. 在页脚,添加了控件来处理搜查事件。
4.当开启搜索的时候,,传递搜索字符串给触发的事件。
代码:
1、通过创建了一个SearchableGridView来扩展GridView,实现在Gridview的页脚有一个搜索框.
{
public void InstantiateIn(Control container)
{
}
}
在SearchableGridView类中,我重写的OnInit函数添加模板的第一列显示的行序号,如果ShowRowNumber标记将被打开。
当每一行创建时,该OnRowCreated方法被执行。在此期间时,对创建的行类型的不同,在表尾,我们添加搜索控件和显示行数量label,在表身,添加行数,在表头,该添加列标题。
该SearchableGridView的SearchFilters属性设置的搜索选项的下拉列表的值。它的Text属性对应的显示名称在DropDownList和列表项的值属性是数据源的列名。
public void SetFilter()
{
_ddlFinder.Items.Clear();
//Copy the items to the dropdownlist
foreach (ListItem li in SearchFilters)
_ddlFinder.Items.Add(li);
}
现在,让我们进入到搜索的事件处理。为此,我创建了一个委托和事件SearchGrid,搜索按钮时被击中。搜索字符串形成使用语法_ddlFinder.SelectedValue +
" like '" + _tbSearch.Text.Trim() +
"%'".
显示页脚时,当没有返回任何行
GridView的默认属性是隐藏的页眉和页脚时没有行被绑定到它。设置一个空项目模板只可以显示模板而不是页眉或页脚。在我们的情况,页脚,必须始终显示,不论绑定到SearchableGridView行数,因为搜索选项应该是可见的。要做到这一点,我不得不重写CreateChildControls方法如下:
例子:
让我用一个例子帮助说明上面的控件。为此,我使用Northwind数据库中的客户表。
步骤1:创建与选择查询数据源dsCustomers:“SELECT CustomerID, CompanyName, Address, City, Country
FROM Customers
”。
步骤2:创建一个SearchableGridView实例和设置SearchFilters属性有关于的搜索选择项。
步骤3:添加两个隐藏字段hfSearchText和hfSort分别存储搜索文本和文本的排序。
第4步:用SearchGrid事件来设置SearchableGridView数据源和过滤的搜索字符串。 hfSearchText和hfSort是隐藏的领域持有的搜索字符串和SearchableGridView排序字符串。BindData方法实现绑定的过滤和排序后的数据。
结论
SearchableGridView将是非常有用,当有一个表格中的数据行很大的时候。通过执行搜索没有太多麻烦。
翻译:http://www.codeproject.com/KB/webforms/SearchSortableGridView.aspx
代码:http://www.codeproject.com/KB/webforms/SearchSortableGridView.aspx
小弟第一次翻译文章,错误多多,请多多指出!
本文转自麒麟博客园博客,原文链接:http://www.cnblogs.com/zhuqil/archive/2009/11/18/1605672.html,如需转载请自行联系原作者
ASP.NET GridView中使用搜索框(SearchableGridView)相关推荐
- iOS中UISearchBar(搜索框)使用总结
2019独角兽企业重金招聘Python工程师标准>>> iOS中UISearchBar(搜索框)使用总结 初始化:UISearchBar继承于UIView,我们可以像创建View那样 ...
- Android中MaterialSearchView(搜索框)的简单实用
Android中MaterialSearchView(搜索框)的简单实用 收搜框架有好多,动画效果满炫酷的就是代码太多,没发抽取他的搜索功能,而这个却比较好用些,直接从代码里面抠出来一个简单实现搜索功 ...
- 电话中删除搜索框内的语音图标按钮。所有应用菜单上面的搜索框当菜单下拉后会重叠。相机视频拍的设置里面有个EIS,删除这个菜单,默认开启EIS。视频画质默认720p。
电话中删除搜索框内的语音图标按钮: override/vendor/mediatek/proprietary/packages/apps/Dialer/java/com/android/dialer/ ...
- php多个表中查找数据_Excel实战技巧74: 在工作表中创建搜索框来查找数据
学习Excel技术,关注微信公众号: excelperfect 本文主要讲解如何创建一个外观漂亮的搜索框,通过它可以筛选数据并显示搜索结果. 如下图1所示,在数据区域上方放置有一个文本框,用来输入要搜 ...
- 详细解读Android中的搜索框(二)—— Search Dialog
Search Dialog是提供搜索的控件之一,还有一个是上次小例子给出的searchView,关于SearchView的东西后面会说到.本次先从Search Dialog说起,让大家慢慢理解andr ...
- pyqt5中利用搜索框和按钮,搜索表中内容
之前找了很多关于这方面的资料,但是都不太满意,通过询问和尝试,终于找到了这样的一个方法,希望对你们有用: 先上代码: self.searchLab = QLineEdit(self) self.sea ...
- chrome 搜索框记录_访问Google Chrome中的搜索框
chrome 搜索框记录 Do you miss having a search box in Chrome and would like to get one back? Then join us ...
- Win7系统右上角没有搜索怎么办?Win7找回资源管理器中的搜索框
最近有win7系统用户发现打开资源管理器,文件夹等右上角没有搜索框,这让人十分不方便无法进行搜索,那么如何找回呢?下面小编就分享一下方法给大家.推荐 最好用的Win7系统下载 操作步骤: 1.打开Wi ...
- 一行命令解决win10任务栏中的搜索框无法使用的问题
由于我经常会使用win10搜索框进行定时等操作,最近发现搜索用不了了,通过谷歌得知可能需要重新安装下小娜: 首先按下win+R命令,输入cmd即可进入命令提示符模式,然后输入 start powers ...
最新文章
- dhtmlxgrid表格笔记
- LogMiner日志分析工具的使用
- JQuery轻量级网页编辑器 选中即可编辑
- 华为在中国建立其全球最大的网络安全透明中心
- 【AI视野·今日CV 计算机视觉论文速览 第211期】Wed, 2 Jun 2021
- Eclipse properties.config.yml 配置文件中文编码问题。Eclipse 配置文件插件解决方案
- java swing 复选JCheckBox组件美化
- 折线图x轴的日期会超出_折线图技巧丨阈限颜色设置
- iTunes 12恢复.ipsw固件
- 弘辽科技:拼多多类目选错了有什么影响?怎么办?
- js日历(包含农历节假日)
- 双机热备——上下层交换机负载分担
- 【COGS2652】秘术「天文密葬法」(长链剖分,分数规划)
- 怎么让鼠标带黄色光圈?
- 在linux系统下暴力破解WiFi密码
- 使用Termux软件在安卓手机上安装ubuntu
- 通过shell脚本自动化量产SD启动卡
- yolov5-6.0/6.1加入SE、CBAM、CA注意力机制(理论及代码)
- mysql5.7性能提升一百倍调优
- 手机智能卡的操作系统——COS技术概述
热门文章
- c3p0三种配置方式(automaticTestTable)
- 康奈尔大学研究员发现“代码投毒”攻击,可触发供应链攻击
- 这两个漏洞暴露 Facebook Group 成员,有个用手机就能发现,获奖$9000
- 开源组件XStream 修复11个漏洞并公开 PoC
- 模型修饰在无人机航测实景三维模型生产中的应用——以SVSMeshEditor软件为例
- vue-router的beforeEach的使用?
- ios中数据存储方式
- 根据中心点、半径长度和角度画点
- Visual C#中用WMI控制远程计算机
- unicode和MBCS(多字节字符集)的关系