ListView的查询绑定

这个问题是要实现:在同一个ListView中实现数据的显示和查询。就是第一次加载页面时ListView加载所有数据,然后用户可以在页面中进行查询动作,结果仍然在ListView中显示出来,并且删除等操作绑定依然存在。

第一步,按照普通的绑定操作将ListView与DataSource绑定好,然后DataSource先设置成DAL层中用来查询所有数据的方法,在这里我的方法是 ListAll() 。

第二步,在查询按钮的Click事件中,我们使用如下代码进行查询方法的改变:

protected void Button1_Click(object sender, EventArgs e)
{
    //获取用户输入的查询条件
    string Key = TextBox1.Text;
    //清空查询方法的参数集合(集合中不能有没用的参数)
    ObjectDataSource1.SelectParameters.Clear();

    //检查用户是否输入了查询条件
    if (Key.Trim().Length > 0)
    {
        //若输入了查询条件,则使用带参数的查询方法
        ObjectDataSource1.SelectMethod = "ListByName";
        //新建查询的参数,构造函数依次要传入:参数名、数据类型、参数值
        Parameter param = new Parameter("PosName", System.Data.DbType.String, Key);
        //将参数添加到数据源的查询参数集合中
        ObjectDataSource1.SelectParameters.Add(param);
    }
    else
    {
        //若没有输入查询条件,则仍然使用查询所有的方法
        ObjectDataSource1.SelectMethod = "ListAll";
    }
}

第三步,现在可以运行查看效果了,在改变了SelectMethod后,ListView会自动刷新显示内容。其它操作绑定均无问题。

问题的解决主要就是通过修改DataSource的SelectMethod方法达到更改查询的目的。

posted @   不是豆豆  阅读(832)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
友情链接:迷途


点击右上角即可分享
微信分享提示