Meilleur auteur de réponses
erreur par default DataGridView

Question
-
Bonne journée à tous,
j'ai commencé à développer avec c# maintenant il y'a environ 2 ou 3 semaines et depuis la dernière semaines je suis bloqué avec un problème du DataGridView. Quand je lance l'application, je reçois ce message d'erreur:
L'exception suivante s'est produite dans le DataGridView: System.ArgumentException: Le paramètre n'est pas valide. à System.Drawing.Image.FromStream(Stream stream, Boolean useEmbeddedColorManagment, Boolean validateImageData) à System.Drawing.ImageConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value) à System.Windows.Forms.Formatter.FormatObjectInternal(Object value, Type targetType, TypeConverter sourceConverter, TypeConverter targetConverter, String formatString, IFormatProvider formatInfo, Object formattedNullValue) à System.Windows.Forms.Formatter.FormatObject(Object value, Type targetType, TypeConverter sourceConverter, TypeConverter, targetConverter, String formatString, IFormatProvider formatInfo, Object formattedNullValue, Object dataSourceNullValue) à System.Windows.Forms.DataGridViewCell.GetFormattedValue(Object value, Int32 rownIndex, DataGridViewCellStyle& cellStyle, TypeConverter valueTypeConverter, TypeConverter formattedValueTypeConverter; DataGridViewDataErrorContexts context) Pour remplacer cette boîte de dialogue par défaut, traitez l'événtment DataError.
La base de donnée que j'utilise est de type .mdf, j'ai essayé VS Community 2017, VS 2015, VS 2012, VS 2008 c# express, et voici le code:
SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Kh\Documents\Visual Studio 2008\Projects\MyAppHachi\MyAppHachi\BIJOU.mdf;Integrated Security=True;User Instance=True"); SqlDataAdapter sdl = new SqlDataAdapter(@"SELECT * FROM F_BANQUE", con); DataTable dt = new DataTable(); sdl.Fill(dt); dataGridView1.DataSource = dt;
j'attend votre réponse.
Réponses
-
Ces champs sont aussi des champs qui sont renseignés à l'aide d'une formule, donc ils n'ont pas de réel intérêt à être récupérés.
Par exemple, pour le champ cbCQ_INTITULE, je vois la formule suivante :
(convert(varbinary(36),isnull([BQ_Intitule],'')))
Quel est l'objectif de votre projet / écran? S'agit-il de faire un requêteur? Un export des données?
- Marqué comme réponse Nina ZaekovaMicrosoft contingent staff, Moderator vendredi 30 mars 2018 12:47
Toutes les réponses
-
Bonjour,
Consultez les articles suivant qui peuvent vous aider:
DataGridView.DataSource propriété
Comment : lier des données au contrôle DataGridView Windows Forms
Cordialement,
NinaMicrosoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.
-
Je ne vois pas de rapport entre votre "description" + le message d'erreur avec le code que vous nous montrez.
Le message d'erreur montre que c'est en tentant d'afficher une image dans une cellule de la grille.
Isolez la ligne de la base qui vous fait planter votre application en manipulant votre requête SQL ou en y regardant directement avec un client SQL.
Paul Bacelar, Ex - MVP VC++
-
Bonjour,
Faire une requête SQL
SELECT * FROM F_BANQUE
est à éviter, faites apparaitre explicitement les noms des colonnes concernées.
Par exemple, si vous décidez d'ajouter des info libres dans cette table, vous n'aurez pas à actualiser votre grille.
Pour moi, le problème provient des colonnes avec les données cryptées, comme par exemple cbBQ_Intitule, cbBQ_Abrege et d'autres colonnes dont le nom commence par cb- Modifié SquallFF8 vendredi 16 mars 2018 11:05
-
-
Ces champs sont aussi des champs qui sont renseignés à l'aide d'une formule, donc ils n'ont pas de réel intérêt à être récupérés.
Par exemple, pour le champ cbCQ_INTITULE, je vois la formule suivante :
(convert(varbinary(36),isnull([BQ_Intitule],'')))
Quel est l'objectif de votre projet / écran? S'agit-il de faire un requêteur? Un export des données?
- Marqué comme réponse Nina ZaekovaMicrosoft contingent staff, Moderator vendredi 30 mars 2018 12:47
-