Credo che l'itemindex vada comunque bene per valori stringa, io lo uso su tabelle che hanno come primary key un varchar.

Non ho il codice sottomano (il mio), ma forse basta indicare nella dichiarazione della datagrid che il campo chiave è il tuo campo di testo. Cerca nelle proprietà di DataGrid qsa del genere.

=tK=