在XAML 中进行数据筛选

XAML 中进行数据筛选

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:Visual Studio 2015

作者:李成富

撰写时间:2019年06月02日

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

在XAML中对数据进行筛选有两种方法(本人已知):

第一种是:在数据库进行筛选,先在数据库写好筛选的SQL语句,再从页面获取到筛选对象,传到服务器,再传到数据库的SQL语句中,进行筛选。

第二种是:在控制器进行筛选,直接从页面获取到筛选对象,传到控制器进行筛选。

我要讲的是第二种:

先把数据绑定好在页面表格,如图所示:

给搜索文本框添加一个改变事件,如图:

视图代码:

控制器代码:

对控制器的方法进行编码:

第一步,先声明一个字符串对象,用来存放筛选语句:

string tiaojian = "";

第二步,获取文本框的筛选对象:

string fe = txt_Select.Text.Trim();

第三步,对筛选对象进行空值判断,若不为空,则给tiaojian添加筛选语句:

if (fe != "")

{

tiaojian = "name like '%'+'" + fe + "'+'%'" +

"or accounts like '%'+'" + fe + "'+'%'" +

"or password like '%'+'" + fe + "'+'%'" +

"or note like '%'+'" + fe + "'+'%'";

}

第四步,声明配置好的服务器:

BLL.Sqlchuenchu.YuangongzhglClient mybll = new BLL.Sqlchuenchu.YuangongzhglClient();

第五步,执行服务器获取数据的方法:

DataTable fec = mybll.Yuangongzh().Tables[0];

第六步,创建自定义视图,并把数据放入其中:

DataView shitu = new DataView(fec);

第七步,初始化一个数据表:

DataTable zhonshu = new DataTable();

第八步,判断筛选语句不为空,并且从数据库获取到数据,如果为真。则把筛选语句传到视图,并把视图传给内存表格:

if (tiaojian != "" && fec.Rows.Count > 0)

{

shitu.RowFilter = tiaojian;

zhonshu = shitu.ToTable();

}

第九步,当第八步没通过时,则判断筛选语句是否为空,如果为真,则直接把视图传给内存表格:

if (tiaojian == "")

{

zhonshu = shitu.ToTable();

}

第十步,把内存表格绑定到页面表格。

dgAccountManage.ItemsSource = zhonshu.DefaultView;

效果如图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值