Если существуют побочные эффекты, это - проблема дизайном. В некоторых системах баз данных нет никакой другой возможности установить автоинкрементное поле т.е. для поля ID первичного ключа.
Синтаксис, как правило, такой же, как и тот, который вы использовали бы в предложении SQL Where, без "Where", поэтому в этом в случае, это будет
bindingSource.Filter = "Field <> NULL";
. Если вы посмотрите документацию msdn для BindingSource.Filter, вы увидите следующее:
«Чтобы сформировать значение фильтра, укажите имя столбца, за которым следует оператор и значение для фильтрации. Принятый синтаксис фильтра зависит от базового источника данных.
Посмотрите эту статью msdn . Описанный синтаксис также должен быть действителен для вашего BindingSource
.