Ciao Paolo.
Come ti ho anticipato via e-mail, il problema nasce dal fatto che tu non tieni conto che le combobox che fanno parte della riga del datagrid, hanno bisogno di un filtro diverso ognuna.....non puoi quindi applicare il filtro ad un oggetto il quale riferimento è lo stesso oggetto(BindingSource).
In questo caso, vedo molto utile l'utilizzo di LINQ....per recuperare un insieme di elementi, in base ad alcuni criteri, ma direttamente sulla datatable ...... ti faccio un esempio che dovrai poi adattare alle tue esigenze:
IDLIVELLODataGridViewTextBoxColumn1.DataSource =From Elementi In TuaDataTable.Rows Where _
DirectCast(Elementi, DataRow)("IDCompetenza").ToString = "Valore" _
Select Elementi
In questo modo ogni DataSource della ComboBox avrà un suo insieme, di elementi filtrati, ma *sconnesso* dall'origine dati (in questo caso la datatable)
Il codice non ho avuto modo di provarlo, ma dovrebbe funzionare...
Eventualmente ....Facci sapere...che lo aggiustiamo.
Ciao