Probleme au niveau de bouton valider l'ajout d'article

Signaler
Messages postés
13
Date d'inscription
jeudi 8 mars 2012
Statut
Membre
Dernière intervention
4 juillet 2012
-
Messages postés
540
Date d'inscription
mardi 4 août 2009
Statut
Membre
Dernière intervention
1 février 2013
-
je suis entrain de développer un formulaire ajout article; au niveau de bouton valider; lorsque je fais débugger il m’apparaît un message d'erreur comme ça: {"Impossible d'effectuer un cast d'un objet de type 'System.String' en type 'commande.Class_Famille'."} s'il vous plaît qui peut m'aider ??

c'est mon code de formulaire:
Code Visual Basic :
Public Class FrmAjout_Article

    Private Sub FrmAjout_Article_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim txtSql As String = "SELECT Type_Famille FROM Tbl_Famille"
        Dim maconnection As New System.Data.OleDb.OleDbConnection(connection.sConStr)
        Dim macommande As New System.Data.OleDb.OleDbCommand(txtSql, maconnection)


        ' Dim cs As String = " la chaine de connexion SQL" 'sConStr
        macommande.Connection.Open()

        Dim monLecture As System.Data.OleDb.OleDbDataReader = macommande.ExecuteReader(CommandBehavior.CloseConnection)

        ' vider le ComboBox 
        ComboBox_fam.Items.Clear()


        If monLecture.HasRows Then
            ' tant que le DataReader a une ligne d'enregistrements
            While monLecture.Read
                ' ajouter la donnée au ComboBox 
                ComboBox_fam.Items.Add(monLecture.GetValue(0))
            End While

        Else
            MessageBox.Show("No result for your Data", "Infos", MessageBoxButtons.OK, MessageBoxIcon.Information)
        End If
    End Sub

    Private Sub btnValider_Article_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnValider_Article.Click
        Dim selType_Famille As Class_Famille = ComboBox_fam.SelectedItem
        connection.LancerRequete("insert into Tbl_Articles values (" + TxtREF.Text + ",'" + txtDesignation.Text + "'," + TextPR.Text + "," + TextTV.Text + "," + TextQUT.Text + ",+ selType_Famille.Type_Famille.ToString+ ") ')")
    End Sub
End Class 




et aussi le module class_famille 

Code Visual Basic :

Public Class Class_Famille
    Private _Type_Famille As String
    Public Sub New(ByVal Type_Famille As String)

        _Type_Famille = Type_Famille

    End Sub

    Public ReadOnly Property Type_Famille() As Integer
        Get
            Return _Type_Famille
        End Get
    End Property



End Class 

1 réponse

Messages postés
540
Date d'inscription
mardi 4 août 2009
Statut
Membre
Dernière intervention
1 février 2013
2
Bonsoir à toi,

ton problème vient de l'instruction suivante:
Dim selType_Famille As Class_Famille = ComboBox_fam.SelectedItem


l'erreur est plutôt claire. si je dis pas de bêtise "Type_Famille" est de type String donc tu ne peux pas effectuer cette assignation là qui attend plutôt un objet de type de ta classe "Class_Famille".
Tu devrais donc faire un cast du genre:
 Dim selType_Famille As Class_Famille = CType(ComboBox_fam.SelectedItem, Class_Famille)


Bonne continuation!!

PS:j'espère avoir pas dit trop de bêtise car je tombe de sommeil là

Ce qui compte,ce n'est pas ce qu'on a mais plutôt ce que l'on fait avec ce qu'on a...

Visual Basic .Net is the best
and vb6.0