Problème de propriété dans un User Control

Résolu
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 - 27 août 2007 à 17:41
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 - 28 août 2007 à 16:46
Salut,


J' ai un UserControl (ctrl_X) avec une PictureBox sur laquelle est placé un label (lbl_Caption)
Problème : j' arrive pas à changer la propriété Caption au cours de l' éxécution.


ctrl_X.Caption="Nouvelle Caption" 
ne donne rien et le UC conserve sa Caption par défaut.
'
Voici le code du UC :


Const DefCaption = "Caption"
Dim v_sCaption As String


Private Sub UserControl_InitProperties()
    v_sCaption = DefCaption
End Sub


Public Property Get Caption() As String
    Caption = v_sCaption
End Property


Public Property Let Caption(m_Caption As String)
    v_sCaption = m_Caption
    PropertyChanged "Caption"
End Property


Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
    v_sCaption = PropBag.ReadProperty("Caption", DefCaption)
    UserControl.lbl_Caption.Caption = v_sCaption
End Sub


Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
    Call PropBag.WriteProperty("Caption", v_sCaption, DefCaption)
End Sub


Merci de trouver pourquoi...


<hr />

I LIKE TO BE HERE WHEN I CAN


<hr />

6 réponses

Utilisateur anonyme
27 août 2007 à 18:32
Salut,

Il faut que tu remplace v_sCaption par taLalel.Caption sinon c'est sur que rien va changer.

Pour la 2nd, c'est normal, il faut choisir la couleur à l'aveuglette.






__________
Kenji

(


Nouveau forum VBA/Office
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
27 août 2007 à 18:33
pour le premier problème, ca paraît évident non ??? Tu ne modifie pas le caption de ton label, tu ne fais que le stocker dans ta variable m_Caption ! (le readproperty n'est déclenché que lors du chargement de la form dans l'IDE VB !).
3
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
27 août 2007 à 17:50
Re-salut,
En attente d' une réponse à la première question, en voici une deuxième.
Après avoir ajouté vb6.exe.Manifest. dans ...\Microsoft Visual Studio\VB98.
Manifestement ma palette a disparue et du coup pour les proprietes Color l' onglet
Palette est vide et je n' ai plus que les couleurs System.
Est-ce normal ?
Merci .

<hr />I LIKE TO BE HERE WHEN I CAN
<hr />
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
27 août 2007 à 19:17
Salut Charles et Salut DS,


Call PropBag.WriteProperty("Caption", lbl_Caption, DefCaption)
n' a rien donné.


> Est-ce que j' ai bien interprèté vos réponses ?


<hr />

I LIKE TO BE HERE WHEN I CAN


<hr />
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
27 août 2007 à 19:29
ça y' est j' ai compris !

Public Property Let Caption(m_Caption As String)
    lbl_Caption = m_Caption
    PropertyChanged "Caption"
End Property

Merci à vous deux

<hr />I LIKE TO BE HERE WHEN I CAN
<hr />
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
28 août 2007 à 16:46
Re-Salut,

Question Palette, il y' a bien une Propriété, mais comment fait-on si on veut en choisir une ?


Re-Merci.


<hr />

I LIKE TO BE HERE WHEN I CAN


<hr />
0
Rejoignez-nous