Есть ли возможность добавить новое свойство к вашему связанному объекту, что-то вроде ItemCodePart, которое возвращает среднюю часть кода вашего элемента, а затем привязать это свойство к столбцу вместо кода элемента? Это был бы самый простой способ.
Другой вариант - обработать событие CellFormatting объекта DataGridView и установить e.Value для той части кода элемента, которую вы хотите показать:
Private Sub myDataGridView_CellFormatting(ByVal sender As Object, ByVal e As DataGridViewCellFormattingEventArgs) Handles myDataGridView.CellFormatting
If e.ColumnIndex = MyItemPartColumn.Index Then
Dim currentValue As String = CStr(myDataGridView.Item(e.ColumnIndex, e.RowIndex).Value)
Dim parts As String() = currentValue.Split(New Char() {"-"c})
e.Value = parts(1)
End If
End Sub