Accueil > > > COMBODATA ACCES - LISTE UN CHAMP ET DONNE SON INDEX DANS LA BASE
COMBODATA ACCES - LISTE UN CHAMP ET DONNE SON INDEX DANS LA BASE
Information sur la source
Description
C'est un controle personnaliser pour le DAO et access. Vous lui passé un recordset en paramètre, lui dite quel champ il doit afficher On peut lui dire d'afficher tel index de la base, tel index du combo, il renvoi toujours la valeur de la base et son index correspondant. Enfin, le code est court et simple je pense.
Source
Imports dao
Public Class CboxData
Inherits System.Windows.Forms.ComboBox
#Region " Code généré par le Concepteur Windows Form "
Public Sub New()
MyBase.New()
'Cet appel est requis par le Concepteur Windows Form.
InitializeComponent()
'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
End Sub
'La méthode substituée Dispose du UserControl pour nettoyer la liste des composants.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Requis par le Concepteur Windows Form
Private components As System.ComponentModel.IContainer
'REMARQUE : la procédure suivante est requise par le Concepteur Windows Form
'Elle peut être modifiée en utilisant le Concepteur Windows Form.
'Ne la modifiez pas en utilisant l'éditeur de code.
Friend WithEvents ComboBox1 As System.Windows.Forms.ComboBox
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Me.ComboBox1 = New System.Windows.Forms.ComboBox
'
'ComboBox1
'
Me.ComboBox1.Location = New System.Drawing.Point(17, 17)
Me.ComboBox1.Name = "ComboBox1"
Me.ComboBox1.TabIndex = 0
Me.ComboBox1.Text = ""
End Sub
#End Region
#Region "Variables Privées"
Private m_table As Recordset
Private m_Champ As Integer = 0
Private m_ChampMax As Integer = 0
Private m_IndexBase As Integer = -1
Private m_cb As ComboBox
#End Region
#Region "Propriètès Publiques"
Public ReadOnly Property DataTable() As Recordset 'Table utilisée
Get
Return m_table
End Get
End Property
Public Property DataChampALister() As Integer 'Champs qui sera listé
Get
Return m_Champ
End Get
Set(ByVal Value As Integer)
If Value < 0 Then Value = 0
If Value > m_ChampMax Then Value = m_ChampMax
m_Champ = Value
End Set
End Property
Public ReadOnly Property DataIndex() As Integer 'Index dans la base du champ en cours
Get
Return m_IndexBase
End Get
End Property
#End Region
#Region "Methodes"
'Permet de charger la table (recordset) dans le combo (et le combo des index)
Public Sub DataLoad(ByVal DataTable As Recordset, ByVal DataChampALister As Integer)
If m_cb Is Nothing Then m_cb = New ComboBox 'Création d'un combo caché pour les index
m_table = DataTable
m_ChampMax = m_table.Fields.Count - 1
If DataChampALister < 0 Then m_Champ = 0
If DataChampALister > m_ChampMax Then m_Champ = m_ChampMax
m_Champ = DataChampALister
Me.Items.Clear()
m_cb.Items.Clear()
If m_table Is Nothing Then Exit Sub 'Si pas de table on sort
If m_table.RecordCount = 0 Then Exit Sub 'Si pas de données on sort
Try
With m_table
.MoveFirst()
Do While Not .EOF
Me.Items.Add(.Fields(m_Champ).Value) 'Met valeur
m_cb.Items.Add(.Fields(0).Value) 'Met index base (on suppose que c'est le champ 0
.MoveNext()
Loop
End With
Catch ex As Exception
End Try
End Sub
'Affiche valeur pour l'index de la base donné
Public Sub DataShow(ByVal DataIndex As Integer)
If DataIndex = -1 Then Me.Text = ""
If m_table Is Nothing Then Exit Sub
If m_cb Is Nothing Then Exit Sub
m_cb.Text = DataIndex.ToString
Me.SelectedIndex = m_cb.SelectedIndex
End Sub
#End Region
#Region "Suivi Selection"
'Surveille les changement du combodata pour mettre a jour l'index de la base
Private Sub CboxData_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.SelectedIndexChanged
Actualiser()
End Sub
Private Sub CboxData_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.SelectedValueChanged
Actualiser()
End Sub
Private Sub CboxData_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.TextChanged
Actualiser()
End Sub
Private Sub Actualiser()
On Error Resume Next
If m_cb Is Nothing Then Exit Sub
m_cb.SelectedIndex = Me.SelectedIndex
m_IndexBase = Val(m_cb.Text)
End Sub
#End Region
End Class
Conclusion
Il s'agit d'un usercontrol basé sur un combobox et qui utilise la reference COM DAO Donc à ajouter aux références de votre projet
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
combo sous access [ par presseb ]
J'ai un probleme sous un formulaire access un combo fait appel a un champs d'une base de données SQLQuand je supprime a l'aide d'une requete sql des c
Etat Access avec VB + dao - Changement du source [ par steph ]
Bonjour, Mon pb est le suivant : Dans VB j'alimente une table avec des données. Cette table est temporaire et vit le temps du traitement. A la fin de
combo multi colonnes (adaptation access ==> VB ) [ par Moussetique ]
Bonjour à tous, Voici, peut-être suis-je trop habitué à travailler en Access, mais j'ai unpetit problème avec les combo box. Dans Access, nous avons l
BASE DONNée : QUEL CHOIX ??? ADO/DAO ? ACCESS/SQL SERVER/MYSQL ? [ par pingwee ]
Je fais 1 prog qui nécessite une connection vers 1 base de donnée sur le net qui doit être sécurisée.Quelle base de donnée à utiliser ?g commencé avec
Prob Access 2000 et DAO ... Hyper Urgent, pleazzze !!!: ) [ par dvdnet ]
Bonjour, je rencontre un problème avec un développenent fait pour un client ... Ce prog a fonctionné au bureau, mais il marche plus chez le client, ch
Récuperation d'un champ Access dans un Combo [ par slashnbk ]
Bonjour à tous,J'aimerais récupérer la valeur des enregistrement d'un champ (BD Access) pour les mettrent automatiquement dans un Combo. Champ1
Attributs des champs d'une table en DAO (access) [ par SoftWay ]
Voilà,j'ai cherché partout et je ne trouve pas la solution afin de mettre un ou plusieurs attributs d'un champ dans une table.Je connais la syntaxe de
DAO 3.6 sur base access avec mot de passe [ par sprintjeff ]
salut,j'arrive pas a me connecter sous dao3.6 a ma base access protégée par un mot de passe. quelqu'un a un bout de code avec la syntaxe adéquate d'op
DAO + ACCESS URGENT MERCI [ par marquesj ]
salut a tous,dans un projet Excel doit mettre ajour une base Acces via un Recordset, mail il arrive que l'enregistrement soit en cours de modification
peut -on réparer une base access 2000 (DAO ne marche pas) [ par steph ]
j'ai essayé avec repairDatabase mais cette option ne supporte pas access 2000 !
|
Derniers Blogs
XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|