C# Binding

Chewi-Chew -  
 Chewi-Chew -
Bonjour à tous,

Voila cela fait meintant une demi journée complete que j'essaye de faire fonctionner un Binding.
J'ai fait le tour des site internet. Mais je ne trouve pas ce que je vaut faire, seulement des exemples soit trop compliqué, soit pas du tout adapté.
Voila ou j'en suis :

J'ai créé mon evenement qui se lance ou moment ou ma propriétés change.
 #region NotifyPropertyChanged
        /// <summary>
        /// Définit l'évenement quand une propriétés sera mis à jour
        /// </summary>
        public event PropertyChangedEventHandler PropertyChanged;
        protected void OnPropertyChanged(Object sender, string name)
        {
            PropertyChangedEventHandler handler = PropertyChanged;
            if (handler != null)
            {
                handler(sender, new PropertyChangedEventArgs(name));
            }
        }
        #endregion


J'ai inserer ca dans la propriété.
 
        /// <summary>
        /// Obtient la valeur de la fin de synchronisation. TRUE si la synchronisation est terminée, FALSE sinon.
        /// </summary>
        public bool SynchronizationEnd
        {
            get { return (this.synchronizationEnd); }
            set
            {
                if (synchronizationEnd != value)
                {
                    synchronizationEnd = value;
                    OnPropertyChanged(this, "SynchronizationEnd");
                }
            }
        }


Mainetnant je ne sais pas quoi inserer dans ma feuille XAML (ou ma feuille C#).
Ensuite j'ai trouvé ca dans MSDN mais je n'arrive pas a le faire fonctionner.
<Window
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  xmlns:src="clr-namespace:SDKSample"
  SizeToContent="WidthAndHeight"
  Title="Simple Data Binding Sample">

  <Window.Resources>
    <src:Person x:Key="myDataSource" PersonName="Joe"/>
...
</Window.Resources>
...
<TextBlock Text="{Binding Source={StaticResource myDataSource}, Path=PersonName}"/>
...
</Window>


Est ce que ca peut marcher avec la propriétés Label.Content et TextBox.Text ??

Merci de votre aide

1 réponse

Chewi-Chew
 
Bonjour a tous,

Voila une solution que j'ai trouvé :


        /// <summary>
        /// Lie un Label a
        /// </summary>
        /// <param name="dataToBind">Donnée à liée avec le Label</param>
        /// <param name="propertyName">Nom de la propriété à lier</param>
        /// <param name="lb">Nom du textblock</param>
        /// <param name="bindingMode">Mode du binding</param>
        /// <returns></returns>
        public bool bindDataAndLabel(object dataToBind, string propertyName, Label lb, BindingMode bindingMode)
        {
            Binding myBindDef = new Binding(propertyName);
            myBindDef.Mode = bindingMode;
            myBindDef.Source = dataToBind;
            lb.SetBinding(Label.ContentProperty, myBindDef);

            return true;
        }


Voila tout simplement
1