How to set RowFilter case-insensitive for DataView

toosensitive picture toosensitive · Oct 16, 2012 · Viewed 10.8k times · Source

I have a datagrid, its datasource is a dataview. There is a textbox with which users can type in filter text. I want to make the filter to be case insensitive. say, the typed text is "Tg"

I tried this

Mydataview.RowFilter = "UPPER(COL) LIKE '%TG%'"

but this gives me an invalidoperation exception

then I changed it to

Mydataview.RowFilter = "COL LIKE '%tg%' or COL LIKE '%TG%'"

This works but it does not cover all cases. E.g. If a row is "Tg", it will be filtered out which is not desirable. What I want, when users type "Tg", it will match any data with tg, Tg, TG, tG, all the combination

thanks

Answer

Mohsen Afshin picture Mohsen Afshin · Oct 16, 2012

RowFilter obeys dataset CaseSensitive value

So do this in your Form_Load method:

CaseSensitive is set to False by default

mydataset.CaseSensitive = false

Proof of concept:

enter image description here