Cetin,
Follow-up: I did some reading. As it turns out, a RowFilter CAN indeed reference a description from a parent table, providing a relation has been established.
So in the example of account name, a rowfilter syntax to search for ACME could be...
myTable.DefaultView.RowFilter = "Parent(Rel_Accts).AcctName LIKE '%ACME%'" ;
My example used multiple relations (to show how data from related tables could be displayed in a grid). With this information, I can evaluate each searchable column just once (as you described), determine if it's a base column or a related column, and build the rowfilter syntax accordingly.
That's what I wanted to do initially, but thought that the RowFilter capability was limited to columns for that datatable.
I still believe that 100,000 rows is excessive, but this will handle it much better.
I've made the changes, and yes, now it runs in just a few seconds. I just need to test it one last time, and then I'll post an update on my website.
Thanks again for your observations, they prompted me to re-evaluate.
Kevin