Bonjour (et bonne année à tous),
Je ne suis pas encore très à l'aise avec les DependencyProperties, et j'essaie de créer un UserControl qui contrôle (!) l'affichage de plusieurs objets graphiques.
L'idée est d'envoyer une String de 0 ou de 1 (autant que d'objets à contrôler) à un contrôle composé de CheckBox (autant que d'objets aussi), mais je n'arrive pas à binder chaque caractère sur les propriétés "IsCheched" des CheckBox.
Le code actuel fonctionne; J'envoie un seul Booleen depuis la couche Vue-modèle à mon contrôle via une DependencyProperty, et la propriété IsChecked de la CheckBox correspondante est bien bindée.
Mais je ne sais pas comment remplacer le booléen par une String via la DependencyProperty, la décomposer en caractères, puis les convertir pour binder les "IsChecked" de mes CheckBox...
Voici mon code (de débutant...):
Couche Vue-modèle:
Namespace VueModele
Public Class VueMod
Private Temp As Boolean = True
Public Property BVisib As Boolean
Get
Return (Temp)
End Get
Set(value As Boolean)
MessageBox.Show("DEBUG: Modif de visibilité 3D: " & value.ToString)
Temp = value
End Set
End Property
End Class
End
Namespace
Le XAML du UserControl:
<CheckBox Name="TopRP" Grid.Column="1" Grid.Row="3" IsChecked="{Binding ElementName=Ctl_Visib3D_xaml, Path=Visib}"/>
<CheckBox Name="TopAP" Grid.Column="1" Grid.Row="4"/>
et le code-behind du contrôle:
Public Shared ReadOnly VisibProperty As DependencyProperty = DependencyProperty.Register("Visib", GetType(Boolean), GetType(Ctl_Visib3D))
Public Property Visib As Boolean
Get
Return (CBool(GetValue(VisibProperty)))
End Get
Set(value As Boolean)
SetValue(VisibProperty, value)
End Set
End Property
Quelqu'un a une idée ?
Merci d'avance.
Partager