Probleme d'activation du binding
Bonjour à tous,
Je vais essayer de décrire celà clairement:
Si on a un controltab avec 2 onglet.
Le 1er onglet comporte des textboxs avec des valeurs d'entrées
Le 2e onglet comporte des textboxs avec des valeurs de sortie calculées au travers de fonctions dont les arguments sont les valeurs d'entrées du 1er onglet.
Et bien si on remplie les textboxs du 1er onglet (on a donc sélectionné le 1er onglet) puis active le binding des textboxs de chaque onglets avec leur propriétés respective, le binding des textboxs du 2e onglet ne se fera qu'au moment où l'on sélectionne celui-ci.
J'ai codé cet exemple pour que vous puissiez vérifier vous même
http://www.mediafire.com/?8g56s5d8dgi1vnb
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| Public Class Form1
Public Property Valeur_1 As Double
Public Property Valeur_2 As Double
Public ReadOnly Property Resultat As Double
Get
Return Addition(Valeur_1, Valeur_2)
End Get
End Property
Public Function Addition(ByVal Valeur1 As Double, ByVal Valeur2 As Double) As Double
Return Valeur1 + Valeur2
End Function
Dim binding_tbox1 As New Binding("Text", Me, "Valeur_1")
Dim binding_tbox2 As New Binding("Text", Me, "Valeur_2")
Dim binding_tbox3 As New Binding("Text", Me, "Resultat")
Private Sub Binding_but_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Binding_but.Click
binding_tbox1.ControlUpdateMode = ControlUpdateMode.Never
TextBox1.DataBindings.Add(binding_tbox1)
binding_tbox2.ControlUpdateMode = ControlUpdateMode.Never
TextBox2.DataBindings.Add(binding_tbox2)
TextBox3.DataBindings.Add(binding_tbox3)
TabPage2.Select()
End Sub
Private Sub DestroyBinding_but_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DestroyBinding_but.Click
TextBox1.DataBindings.Clear()
TextBox2.DataBindings.Clear()
TextBox3.DataBindings.Clear()
End Sub
End Class |
J'ai déjà rencontrer ce problème, et ai réussi à le contourner, mais là celà me repose problème.
J'ai pensé à faire comme une sélection en arrière plan, mais avant des faire quelque chose de compliqué pour rien, je voulais avoir l'avis du forum.