Remplir textbox à partir d'une base de donnée

XatOr Messages postés 799 Statut Membre -  
XatOr Messages postés 799 Statut Membre -
Bonjour, je suis sur une page depuis pas mal de temps et j'ai du mal à m'en sortir alors je demande de l'aide auprès de la communauté. Je crée un site en VB.NET et ASP.NET avec Visual Studio et pour cette page qui permet d'afficher et de modifier les informations d'un contact, j'ai organiser ma page comme ceci :
- DropDownList avec la liste des contacts
- 3 Textbox qui récupèrent les informations du contact choisi dans la DDL (si je choisi le contact "Roger", les textboxs "tb_Nom", "tb_Prenom" et "tb_Adresse" se rempliront avec les informations du contact "Roger" en allant chercher les informations dans la base de donnée)

Donc ma base se présente comme ceci :
- 1 table CONTACT avec 4 champs "Num_auto", "Nom", "Prénom" et "Adresse"

J'espère que vous avez bien compris ma requête. Merci à l'avance de votre aide.

4 réponses

XatOr Messages postés 799 Statut Membre 34
 
Il suffisait de remplacer DropDownList2.Items.Add(dr.GetString(0)) par textbox1.text=dr.GetString(0)

C'est bon maintenant j'arrive à afficher les données dans les textbox sauf que quand un champ est vide il affiche une erreur ce qui est normal il va falloir que je gère ca.

J'ai rajouté une DDL "Pays" qui liste l'ensemble des Pays de la base (pour celà j'ai donc rajouter une table PAYS dans la base de donnée) et j'aimerai qu'il selectionne dans la DDL le pays du contact toujours par rapport à la premiere DDL)
1
XatOr Messages postés 799 Statut Membre 34
 
En fait, je n'arrive pas à afficher les informations dans mes textbox...

Merci
0
XatOr Messages postés 799 Statut Membre 34
 
Donc pour gérer si le champ dans la base est vide, afficher "" dans la textbox j'ai fais :

DoWhile dr.Read()

If IsDBNull(dr.GetString(0)) Then

TextBox1.Text = ""
Else

TextBox1.Text = dr.GetString(0)
EndIf

Loop

Mais il m'affiche une erreur de cast....

J'ai aussi essayé ca :

DoWhile dr.Read()

If dr.GetString(0) Is Nothing Then

TextBox1.Text = ""
Else

TextBox1.Text = dr.GetString(0)
EndIf

Loop

Mais encore erreur de cast....

Merci
0
XatOr Messages postés 799 Statut Membre 34
 
En effectuant des tests, j'arrive à afficher les informations mais seulement dans une DropDownList avec le code suivant :

Dim conn As OleDbConnection = New OleDbConnection( "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Contacts.mdb" )

Dim cmd_edit_nom As OleDbCommand = conn.CreateCommand()
cmd_edit_nom.CommandText =

"SELECT Nom FROM ANNUAIRE WHERE Num_auto like ('" & DropDownList1.SelectedValue & "')"
conn.Open()

Dim dr As OleDbDataReader = cmd_edit_nom.ExecuteReader()

Do While dr.Read()
DropDownList2.Items.Add(dr.GetString(0))
Loop

dr.Close()
conn.Close()

End Sub

Mais le problème est que je ne veut pas que le nom s'affiche dans une DDL mais dans une textbox. Quelles sont les modifications à apporter ? Merci ;)
-1