如何跨具有空格字符的字段名称过滤datagridview? [英] How to filter datagridview across field name which has space character?

查看:18
本文介绍了如何跨具有空格字符的字段名称过滤datagridview?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的 winform 中有一个 datagridview.我用sql查询填充它.我这样称呼列名:

I have a datagridview in my winform. I fill it with sql query. I call the column names like that:

这是我的 sql 查询:

This is my sql query:

SELECT SF.ID, SF.TARIH AS 'TARİH', M.AD AS 'MÜŞTERİ ADI' FROM TABLE1 SF AND TABLE2 M

如您所见,这些列名称具有土耳其语和空格字符.当我尝试过滤 datagridview 时,我使用以下代码:

These column names have Turkish and space characters as you see. When i try to filter datagridview, i use this code:

(datagridview.DataSource as DataTable).DefaultView.RowFilter =
                string.Format("'MÜŞTERİ ADI' LIKE '%{0}%'", textbox.Text.ToUpper());

它不起作用.如果我在 sql 查询中调用列名,例如 M.AD AS 'MAD' 和类似 "MAD LIKE '%{0}%'" 的代码,它可以工作.但我需要将列名称称为 'MÜŞTERİ ADI'.我怎样才能做到这一点?感谢您的帮助.

It doesn't work. If i call the column name in sql query like that M.AD AS 'MAD' and in code like that "MAD LIKE '%{0}%'" it works. But i need to call column name as 'MÜŞTERİ ADI'. How can i do that? Thx for any help.

推荐答案

我终于找到了.过滤类似于使用 sql 查询.如果有空格字符只需要在列名中添加'['和']'字符即可.就我而言,这非常有效:

At last i found it. The filtering is similar to work with sql queries. If there is space characters only need to add '[' and ']' characters to column name. In my case, this works perfectly:

(datagridview.DataSource as DataTable).DefaultView.RowFilter =
                string.Format("[MÜŞTERİ ADI] LIKE '%{0}%'", textbox.Text.ToUpper());

这篇关于如何跨具有空格字符的字段名称过滤datagridview?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆