Comment personnaliser les données dans datagridview pendant la liaison de données

Je suis à la recherche d'un moyen de formater DataGridViewTextBoxColumn de sorte que la valeur à databinded est formaté lors de la liaison de données. Par exemple, j'ai une Société de propriété et j'ai besoin de prendre 5 premières lettres du nom de la Société lors de la liaison de données se produit.

Je pourrais accrocher sur les différents DataGridView événements (par exemple, RowsAdded) et une boucle sur toutes les lignes et de faire le tour, mais j'aimerais trouver plus sophistiqués façon de le faire. Depuis que j'ai décidé d'utiliser la liaison de données, en boucle par le biais de données et les modifier, il est un peu contre le databinding concept.

Ce que je suis après, c'est comment faire la même chose que ci-dessous, mais d'ajouter une mise en forme personnalisée logique:

dataGridView1.Columns[colSomeDate.Index].DataPropertyName = "SomeDate";
colSomeDate.DefaultCellStyle.Format = "yyyy";

Je pense que je devrais mettre en œuvre IFormatProvider, mais je n'arrive pas à comprendre comment je dois le mettre en œuvre.

dataGridView1.Columns[companyName.Index].DataPropertyName = "CompanyName";
companyName.DefaultCellStyle.FormatProvider = new ShortText(); //ShortText should implement IFormatProvider

source d'informationauteur Clack