To your questions:
1. If you RadGrid is bound to LinqDataSource/EntityDataSource filter expressions will be applied on DB server, otherwise you can use RadFilterSqlQueryProvider
to build the expressions and apply them manually on your DB.
2. When you are using RadFilter integration with RadGrid(i.e. FilterContainerID is set to RadGrid), RadFilter will retrieve DataField from GridTemplateColumn. Thus to have this fields visible in RadFilter context menu you must have other columns with such DataField's.
Other option is to use filtering against DataSourceControl (http://demos.telerik.com/aspnet-ajax/filter/examples/datasourceintegration/defaultcs.aspx
) or to not set FilterContainerID and manually define FieldEditors collection and manually apply the expressions later.
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking
system and vote to affect the priority of the items