Bonjour,
j'ai un petit soucis dans un programme. J'ai une application WindowsForms, en C#, dans laquelle j'ai un datagridview. Lorsque je lance mon application, j'ai ma grille avec plusieurs colonne , exemple:
nom, prenom,age,ville etc.....
Lorsque je clique sur la colonne "nom" pour la trier, ça marche, pareil pour age,ville, mais quand je clique sur "prenom" pour trier, ça génère une exception, je ne sais pas pourquoi, j'ai l'erreur suivante :
System.ArgumentException: L'objet doit être de type String.
à System.String.CompareTo(Object value)
à System.Collections.Comparer.Compare(Object a, Object b)
à System.Windows.Forms.DataGridViewRowCollection.RowComparer.CompareObjects(Object value1, Object value2, Int32 rowIndex1, Int32 rowIndex2)
à System.Windows.Forms.DataGridViewRowCollection.RowArrayList.Pivot(Int32 left, Int32 center, Int32 right)
à System.Windows.Forms.DataGridViewRowCollection.RowArrayList.CustomQuickSort(Int32 left, Int32 right)
à System.Windows.Forms.DataGridViewRowCollection.RowArrayList.CustomSort(RowComparer rowComparer)
à System.Windows.Forms.DataGridViewRowCollection.Sort(IComparer customComparer, Boolean ascending)
à System.Windows.Forms.DataGridView.SortInternal(IComparer comparer, DataGridViewColumn dataGridViewColumn, ListSortDirection direction)
à System.Windows.Forms.DataGridView.Sort(DataGridViewColumn dataGridViewColumn, ListSortDirection direction)
à System.Windows.Forms.DataGridView.OnColumnHeaderMouseClick(DataGridViewCellMouseEventArgs e)
à System.Windows.Forms.DataGridView.OnMouseClick(MouseEventArgs e)
à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.DataGridView.WndProc(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
J'ai mis la totalité de l'erreur, au cas où mais pas moyen de savoir pourquoi et quand je vais dans visual studio, l'erreeur se produit à l'emplacement suivant dans program.cs:
GC.Collect();
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new FrmMain()); ----> ICI
Merci
Partager