begin process at 2010 02 10 11:20:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Windows

 > 

UserControl

 > 

Provoquer la validation d'un Control pour le DataBinding


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Provoquer la validation d'un Control pour le DataBinding

lundi 11 mai 2009 à 17:25:42 | Provoquer la validation d'un Control pour le DataBinding

jrivet

Membre Club
Bonjour à tous,
Alors sous VS2005 avec FrameWork 2.0

J'essaie de mettre en place un DataBinding entre un de nos UserControl et un objet.
- Le usercontrol n'est pas très compliqué c'est un TextboX amélioré.


voilà pour l'instant ma classe de test
    public class clsTest: INotifyPropertyChanged
    {
        private int _num;

        public int Num
        {
            get { return _num; }
            set {
                _num = value;
                NotifyPropertyChanged("Num");
            }
        }

        private void NotifyPropertyChanged(string p)
        {
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs(p));

            }
        }
        public clsTest(){}
        public event PropertyChangedEventHandler PropertyChanged;
    }
   
Voici ma partie Formulaire


 public partial class Form1 : Form
    {
        clsTest test = new clsTest();
        public Form1(){InitializeComponent();}

        private void Form1_Load(object sender, EventArgs e)
        {
            Tnum.DataBindings.Add("Text", test, "Num", false, DataSourceUpdateMode.OnValidation);
            test.PropertyChanged += new PropertyChangedEventHandler(test_PropertyChanged);   
        }

        void test_PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            label1.Text = test.Num.ToString();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            test.Num = 456;
        }
    }
   
J'avais d'abord opté pour DataSourceUpdateMode.OnPropertyChanged  pour la mise à jour de mon objet mais
je me suis rendu compte que pour une valeur numérique (par exemple) entrée 458 la propriété passait pas 4 puis 45 puis 458
logique après tout.

J'ai donc décidé de passer par DataSourceUpdateMode.OnValidation

Qui marche aussi bien, Seulement j'aimerais que le textbox du UserControl valide son contenu après la touche entrée
et que le conteneur de ce UC s'en rende compte pour le DataBinding et la je sèche.
   
J'ai testé en mettant this.ValidateChildren();  dans le code du formulaire à un endroit qui allait bien.
Cela fonctionne et met bien à jour la propriété, mais j'aimerais me passer de ce code dans le formulaire et mettre quelque chose d'équivalent dans l'UserControl.

Est ce que quelqu'un aurait une solution, un lien utile ou une explication. ce concept de DataBinding est un peu nouveau pour moi.
Est ce que je m'y prends mal?
   
J'espère m'être correctement exprimé ;)
Déjà merci de m'avoir lu


@+: Ju£i¤n
Pensez: Réponse acceptée


Cette discussion est classée dans : public, test, num, databinding, propertychanged


Répondre à ce message

Sujets en rapport avec ce message

Au secours Sérialization [ par blueangel ] Bonjour tout le monde, Mon probléme est le suivant j'ai une classe qui s'apelle CTiers voici sa définition: public class CTiers     {         private Insertion simple en SQL Server impossible [ par Cygace ] Bonjour, voila je suis entrain de m'arracher les cheveux sur une insertion ultra simple sur sql serveur 2005 mais qui refuse d'aller. Je vous mets le recherche un item dans une colonne d'une listview c# [ par johnnous ] bonjourj'ai une listview et je souhaiterais faire une recherche d'un element mais pas colonnevoici un exemple de ma listview__________________________ Problème avec 2 Form [ par fredouille312 ] Bonjour à tous,Mon problème est le suivant: Quand je débug tout va bien (le compilateur passe sur toute les lignes) mais au final, il ne se passe rien Le databinding [ par matlocker ] Bonjour,Je viens de lier un textbox a un dataset et je recupere bien le contenu du champ dans mon textbox mais comment faire pour lier mon textbox a l Incomprehensible !!!!! [ par Mimoza222 ] Inexplicable : Vola mon code : public string Color         {             get             {   & Specified cast is not valid. [ par Minotthor ] Tout d'abord, trois petites question : Est-il possible d'hériter d'une classe dont tous les constructeurs sont "private" ? En fait elle crée ses inst OCX et paramètres [ par johnnous ] J'ai un pb un peu plus complexe que les autres enfin je croisj'ai tjs un OCX en VBcelui-ci charge un objet contenant une liste CtrlBase(1)="Test"CtrlB enumeration [ par mathmax ] J'ai une question concernant les enumérations. Voici d'abord le bout de code que j'essai de comprendre :using </FONT


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales