Bonjour à tous !
Voilà, j'ai un petit souci en Xaml. Dans ma classe partielle, j'instancie un objet player, qui possède une variable d'instance Volume de type int. Je veux binder mon volume à un slider de mon GUI.
Voilà le code permettant de faire ceci dans ma classe partielle :
Mon slider étant défini par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 //binding volume Binding volumeBinding = new Binding("Volume"); volumeBinding.Source = this.player; this.XVolume.SetBinding(Slider.ValueProperty, volumeBinding);
Le problème, c'est que je trouve crade de faire le binding dans la partie c# alors qu'on peut le faire en Xaml. J'ai tenté un :
Code : Sélectionner tout - Visualiser dans une fenêtre à part <Slider x:Name="XVolume"/>
mais rien à faire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <Slider x:Name="XVolume" Value="{binding Source=player, Path=Volume}"/>
J'ai par contre réussi à binder de la manière suivante :
c# :
Xaml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 //binding volume this.XVolume.DataContext = this.player;
Cela ne résout mon problème qu'à moitié, étant donné qu'on a encore du code c# pour faire le binding. Y a t'il une solution avec Xaml uniquement ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part <Slider x:Name="XVolume" Value="{Binding Path=Volume}"/>
Partager