begin process at 2010 02 10 00:52:33
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

WPF

 > BINDER DES PROPRIÉTÉS CALCULÉES AVEC WPF

BINDER DES PROPRIÉTÉS CALCULÉES AVEC WPF


 Information sur la source

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :WPF Source .NET ( DotNet ) Classé sous :wpf, databinding, expressions, view, CollectionView Niveau :Débutant Date de création :29/11/2007 Date de mise à jour :08/04/2008 20:14:46 Vu / téléchargé :5 296 / 168

Auteur : mathmax

Ecrire un message privé
Site perso
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Cette source permet d'ajouter des propriétés virtuelles à la vue d'une collection liée à un contrôle. On peut ainsi afficher et modifier le résultat de n'importe quelle expression basée sur les propriétés d'un des objets de la collection. Le databinding n'a plus de limite :-) Il s'agit d'un projet framework 3.5.

Source

  • Tout est dans le zip.
  • Voici comment se fait l'ajout d'une propriété virtuelle :
  • var view = new CollectionView<Company>(MyCollection);
  • view.FakePropertiesDefinitions.Add(
  • "NomDeLaPropriétéVirtuelle",
  • //méthode "get"
  • c =>
  • {
  • view.StoredObject = [n'importe quelle expression : linq ou autre];
  • return [une expression basée sur view.StoredObject];
  • },
  • //méthode "set"
  • value =>
  • {
  • //on peut ici faire toute sorte d'opération de mise à jour sur view.StoredObject
  • });
  • this.DataContext = view;
Tout est dans le zip.
Voici comment se fait l'ajout d'une propriété virtuelle :

var view = new CollectionView<Company>(MyCollection);
view.FakePropertiesDefinitions.Add(
	"NomDeLaPropriétéVirtuelle",
	//méthode "get"
	c =>
	{
		view.StoredObject = [n'importe quelle expression : linq ou autre];
		return [une expression basée sur view.StoredObject];
	},
	//méthode "set"
	value =>
	{
                //on peut ici faire toute sorte d'opération de mise à jour sur view.StoredObject
	});

this.DataContext = view;

 Conclusion

Je n'ai pas encore testé en profondeur mon code. Mais ça marche avec l'exemple que j'ai fournit. N'hésitez pas à me faire des suggestions pour améliorer ce code ;-)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

29 novembre 2007 04:23:12 :
correction de l'exemple

 Sources du même auteur

Source avec Zip Source .NET (Dotnet) IMPLÉMENTER FACILEMENT INOTIFYPROPERTYCHANGED
Source avec Zip Source .NET (Dotnet) PROPRIÉTÉS D'EXTENSION AVEC C# 3.0

 Sources de la même categorie

Source .NET (Dotnet) WPF MOVENEXT ET MOVEPREVIOUS par muffin516
Source avec Zip Source avec une capture Source .NET (Dotnet) ROBOT À DESSINER par Warny
Source avec Zip Source avec une capture Source .NET (Dotnet) [WPF .NET 3.5] USER CONTROL INFO BOX par Kite37
Source avec Zip Source avec une capture Source .NET (Dotnet) [C# .NET 3.5 WPF] SLIDER CIRCULAIRE par Kite37
Source avec Zip Source avec une capture Source .NET (Dotnet) SERVICES WINDOWS par thebestdrummer

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture SODOKU MUSING (PERMUTATION & SODOKU) par krissssss
Source avec Zip Source avec une capture Source .NET (Dotnet) ROBOT À DESSINER par Warny
Source avec Zip Source avec une capture Source .NET (Dotnet) [WPF .NET 3.5] USER CONTROL INFO BOX par Kite37
Source avec Zip Source .NET (Dotnet) CAROUSEL EN WPF (USERCONTROL) par CoolSpirit
Source avec Zip Source avec une capture Source .NET (Dotnet) [WPF] NOTIFIER L'INTERFACE UTILISATEUR DE LA MODIFICATION D'... par Thomas LEBRUN

Commentaires et avis

Commentaire de Julien237 le 03/12/2007 09:55:34

Waouw super, juste ce que je cherchais, ça tombe vraiment à pic, merci !

Commentaire de Julien237 le 03/12/2007 09:56:17 10/10

J'avais oublié la note...

Commentaire de yoannd le 04/12/2007 17:47:06 10/10

Pour moi, c'est du tout bon !

C'est exactement le genre de choses que je m'amuse à faire en ce moment !

Merci pour cette source !

Commentaire de mathmax le 04/12/2007 22:44:34

Merci beaucoup pour vos commentaires.

N'hésitez pas à me faire part de suggestions pour améliorer le code surtout si c'est un sujet sur lequel vous avez déjà travaillé. :-)
Je trouve que le databinding est un sujet passionnant. J'adorerais améliorer cette source avec quelqu'un d'autre...

Commentaire de yoannd le 04/12/2007 22:56:11

Tiens, j'ai peut-être une petite question pour toi :
Je suis en train de développer une petite appli de gestion de comptes personnels. Pour te planter un peu le décor, il y a un objet principal, contenant des banques, chaque banque contient des comptes, qui contiennent des relevés bancaires, qui contiennent des opérations bancaires (je simplifie un peu, mais le principe est là).
Je souhaiterais binder mon objet principal dans un treeview avec des hierarchicaldatatemplates, mais attention, je souhaiterais par exemple que les relevés bancaires soient regroupés par année (exemple).
Grosso modo, le treeview donnerais un truc comme ça :
- Mes comptes
   - Banques
       - Crédit agricole
            - Compte chèque
                - Relevés bancaires
                    + 2006
                    - 2007
                         - Relevé du XX/XX/2007
                               - Operation bancaire

Bref, est-ce que tu penses que c'est faisable ?
Autre question : j'ai constaté qu'on ne pouvais pas référencer un type dans le xaml, si ce trouve en dehors de l'assembly en cours... Les xmlns n'y font rien. T'es-il arrivé d'avoir ce problème ? (peut-être que c'est du à ma version du fmk, qui est une beta, et que je suis en train de remplacer par une release en ce moment même...).

En tout cas, merci d'avance si tu peux m'aiclairer sur ces points :)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Frere dans un tree view [ par rintchu ] Salut,je voudrais inseré un noeud dans un arbre en tant que frere du noeud selectionné.Quelqu'un aurait il un exemple de code ?Merci Databinding et validation [ par Miltiades ] J'ai un 'petit' formulaire (juste quelques dizaines de champs dont la pluparts sont gérés par databinding,le probleme, c'est qu'une petite partie des control couleur et list view [ par lionel55 ] salut à tous,en csharp1. dans une liste view est il possible que lorsque l'on clique sur une ligneque cela coche aussi la case à cocher du début de li Expressions régulières - Taille maxi [ par bucherb ] Hello!Est-ce que qqun connait la combine pour vérifier en expression régulières la taille d'une chaine. J'explique:J'aimerais tester si la taille d'un List View [ par RM50Man ] Est il possible de selectionner seulement la cellule sur laquel on appuie ,dans une listview avec plusieurs lignes et colonnes !!!!!!!!!RM50man UserControl et DataBinding [ par cendretp ] J'ai un textbox mis &#224; jour via&nbsp;un DataBinding&nbsp;dans un UserControl&nbsp; qui ne fonctionne pas&nbsp; mais cela fonctionne dans le textbo Expressions régulières [ par brice_nice ] Bonjour, J'ai un petit probl&#232;me avec mon expression r&#233;guli&#232;re : Regex &nbsp;maRegexp = new Regex(@"^[\w\+\-\(\)\.&amp;/,':=&#176;`@ ]+$ Classes, héritage, 3D [ par Blobette ] Bonjour Je dois r&#233;aliser un projet en C# et je suis novice dans ce domaine. Voila: je dois faire une interface permettant de visualiser des info 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 DataGridView et DataSet [ par Bidou ] Bonjour,Avec le datagridView (et le datagrid aussi d'ailleurs), quand on y set comme DataSource une table d'un DataSet (par exemple) alors&nbsp;le dat


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,686 sec (4)

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