public static void SearchResult(DataGrid dg,string condition)
{
#region
string code = string.Empty;
DataView dv = dg.ItemsSource as DataView;
//if (condition.Substring(0, 1) != "0" || Regex.IsMatch(condition, @"^[+-]?\d*[.]?\d*$"))
{
for (int i = ; i < dv.Table.Columns.Count; i++)
{
if (dv.Table.Columns[i].DataType == typeof(System.Int32) || dv.Table.Columns[i].DataType == typeof(System.Byte))
{
if (condition.Substring(, ) != "" && Regex.IsMatch(condition, @"^[+-]?\d*[.]?\d*$"))
{
code += (string)dv.Table.Columns[i].ToString() + " = " + condition + " or ";
}
}
else if (dv.Table.Columns[i].DataType == typeof(System.DateTime))
{
try
{
code += (string)dv.Table.Columns[i].ToString() + " = '" + Convert.ToDateTime(condition) + "' or ";
}
catch (Exception)
{
}
}
else
{
code += (string)dv.Table.Columns[i].ToString() + " = '" + condition + "' or ";
}
}
}
if (!string.IsNullOrEmpty(code))
{
code = code.Substring(, code.Length - );
MessageBox.Show(code);
dv.RowFilter = code;
//dv.Sort = "ID ASC";
dg.ItemsSource = dv;
}
#endregion
//DataTable dv = (dg.ItemsSource as DataView).Table;
//DataTable dtNew = dv.Copy();
//dtNew.Clear();
//foreach (DataRow row in dv.Rows)
//{
// for (int i = 0; i < dv.Columns.Count; i++)
// {
// if (row[i].ToString() == condition)//全匹配查询//row[i].ToString().Contains(condition)//模糊查询
             // { 
                    // dtNew.Rows.Add(row.ItemArray);
                    // break;
             // }
          // }
        //}
        //dg.ItemsSource = dtNew.DefaultView;
     }

C# WPF Datagrid的筛选的更多相关文章

  1. WPF DataGrid常用属性记录

    WPF DataGrid常用属性记录 组件常用方法: BeginEdit:使DataGrid进入编辑状态. CancelEdit:取消DataGrid的编辑状态. CollapseRowGroup:闭 ...

  2. WPF DATAGRID - COMMITTING CHANGES CELL-BY-CELL

    In my recent codeproject article on the DataGrid I described a number of techniques for handling the ...

  3. WPF DataGrid某列使用多绑定后该列排序失效,列上加入 SortMemberPath 设置即可.

    WPF DataGrid某列使用多绑定后该列排序失效 2011-07-14 10:59hdongq | 浏览 1031 次  悬赏:20 在wpf的datagrid中某一列使用了多绑定,但是该列排序失 ...

  4. xceed wpf datagrid

    <!--*********************************************************************************** Extended ...

  5. 获取wpf datagrid当前被编辑单元格的内容

    原文 获取wpf datagrid当前被编辑单元格的内容 确认修改单元个的值, 使用到datagrid的两个事件 开始编辑事件 BeginningEdit="dataGrid_Beginni ...

  6. WPF DataGrid绑定一个组合列

    WPF DataGrid绑定一个组合列 前台: <Page.Resources>        <local:InfoConverter x:Key="converter& ...

  7. WPF DataGrid自定义样式

    微软的WPF DataGrid中有很多的属性和样式,你可以调整,以寻找合适的(如果你是一名设计师).下面,找到我的小抄造型的网格.它不是100%全面,但它可以让你走得很远,有一些非常有用的技巧和陷阱. ...

  8. WPF DataGrid显格式

    Guide to WPF DataGrid formatting using bindings Peter Huber SG, 25 Nov 2013 CPOL    4.83 (13 votes) ...

  9. WPF DataGrid Custommization using Style and Template

    WPF DataGrid Custommization using Style and Template 代码下载:http://download.csdn.net/detail/wujicai/81 ...

随机推荐

  1. Transformations 方块转换

    题目是中文题,就不做什么解释了,纯模拟题,主要要搞清楚这几种装换方式下标的变化: 第一种:顺时针旋转90度: c[j][n-i+1]=a[i][j]; 第二种:旋转180度: c[n-i+1][n-j ...

  2. 基于visual Studio2013解决面试题之0405和最大的子矩阵

     题目

  3. HDU 4876 ZCC loves cards _(:зゝ∠)_ 随机输出保平安

    GG,,,g艹 #include <cstdio> #include <iostream> #include <algorithm> #include <st ...

  4. Swift - whose view is not in the window hierarchy 问题解决方法

    问题现象:想在页面初始化的时候,使用self.presentViewController方法弹出个告警提示框UIAlertController.但行后报了个如下告警,同时告警框也出不来. 1 2015 ...

  5. 小言C指针

            指针c语言,占据着重要的地位.终场前int.char.double其他类别似.它是一种数据类型,其特殊的原因int等基本类型的变量存储内容,针变量存放的是地址. 内存被划分成很多但愿区 ...

  6. win32多线程程序设计笔记(第二章)

    第二章线程的第一次接触,主要讲了如何创建线程以及需要注意的几点. 一.创建线程 与调用函数的过程类似;线程只不过用CreateThread的API将函数封装起来,并产生一个与主程序同时执行的程序来调用 ...

  7. 可运行jar包调用exe可运行文件,子进程阻塞

    背景: 须要在项目的測试工具中加入一个button,点击后直接打开某exe工具. 这个工具的功能是导入txt文件,转为excel报表输出. 无奈解析了两行之后就停止不动了,也不报错.关闭測试工具后,就 ...

  8. 汇编与高级语言(插图结合Delphi代码,来自linzhengqun)

    汇编与高级语言 1.      汇编基础知识 1.1.      寄存器 寄存器 用途 EAX,EBX,EDX,ECX 通用寄存器,由程序员自己指定用途,也有一些不成文的用法: EAX:常用于运算. ...

  9. SilkTest Q&A 6

    Q51.GMO在线的问题? 该问题是一个特例,不具有代表性,故不翻译了. Q52.如何为一个testplan的属性定义值? A52:你必须在使用前为一个testplan定义值: 1.确保你的test ...

  10. javascript中使用Map

    mis.comm.js.Map = function() { this.elements = new Array(); //获取MAP元素个数 this.size = function() { ret ...