Dot.Blog

C#, XAML, WinUI, WPF, Android, MAUI, IoT, IA, ChatGPT, Prompt Engineering

Silverlight : Contrainte de propriétés (Coercion)

[new:20/11/2010]La contrainte des valeurs est un mécanisme essentiel permettant à la valeur d'une propriété de rester confiner dans des bornes fixées par l'objet ou par l'utilisateur. C'est en réalité un des éléments de base permettant de respecter le paradigme de la programmation objet : l'encapsulation qui veut qu'un objet se protège de toute action externe pouvant le déstabiliser. Hélas, Silverlight n'offre pas les mécanismes que WPF propose pour les propriétés de dépendances. Nous allons voir comment régler cet épineux problème.Plus...

MVVM, je m’y perds ! [une réponse rapide]

[new:16/09/2010]MVVM est une pattern, une simple pattern, pas une technologie nouvelle. Elle est utilisable dans de nombreux contextes, sous ce nom ou un autre et sous des formes plus ou moins identiques. Rien de nouveau donc. Et pourtant tout change. “Je m’y perds” est une réflexion que j’entends souvent. Encore aujourd’hui, un lecteur de Dot.Blog me faisait part de ce sentiment d’être un peu “embrouillé”. Alors plutôt qu’une réponse en privé qui ne profiterait qu’à un seul, voici la réponse à ce lecteur, et bien sûr, à tous les autres qui partagent la même impression…Plus...

PropertyChanged sur les indexeurs

[new:16/09/2010]Voici un court sujet pour cette rentrée (et surtout pour me remettre du pavé de 92 pages sur MVVM et le toolkit MVVM Light !). En effet, ce bon Anders Hejlsberg, en repompant certaines bonnes idées de Delphi qu’il avait créé quelques années avant C#, a oublié certaines choses pourtant utiles comme les indexeurs nommés. En C# un seul indexeur par classe et pas de nom ! Choix curieux, étrange, peu judicieux, et au bout de tant de temps jamais modifié. Bref un seul indexeur, et sans nom. Mais lors d’un Binding WPF ou Silverlight (donc Xaml) comment diable prévenir les objets bindés que les valeurs de l’indexeur ont changé (quand ce cas se présente) ?Plus...

Parallel FX, P-Linq et maintenant les Reactive Extensions…

[new:10/8/2010]Les Parallel Extensions, connues jusqu’à lors sous le nom de Parallel Framework Extensions (ou PFX) forment une librairie permettant de faciliter la construction d’algorithmes parallèles (multi-thread) tirant partie des machines multi-cœur. Je vous en avais déjà parlé, ainsi que de P-Linq les extensions parallèles pour LINQ. Deux choses importantes à savoir aujourd’hui : les Parallel Extensions font partie de .NET 4 (VS 2010, Silverlight…) et une nouvelle librairie arrive, les Reactive Extensions !Plus...

Blend 4 et les ressources de Design

[new:3/08/2010]Si vous créez des applications de type MEF ou bien dont certaines ressources sont chargées dynamiquement par d’autres procédés, vous savez à quel point cela pouvait être pénible en Design sous Blend qui, par force, ne trouvait pas les styles ou templates (puisque chargés au runtime). Il existait des ruses plus ou moins contraignantes, mais rien de bien pratique il faut l’avouer. Avec Blend 4 cela n’est plus qu’un souvenir !Plus...

Silverlight : Control vs UserControl

[new:28/07/2010]La différence est importante entre Control et UserControl, et en même temps il est souvent difficile de la comprendre ! Quand créer l’un ou l’autre est une question récurrente. Comment choisir entre l’un ou l’autre dans ses développement ?Plus...

Silverlight 4 / Blend 4 : Mise en page dynamique et transitions

[new:26/07/2010]A chaque génération de Blend l’équipe de Silverlight autant que celle de Expression Blend tentent de rendre la mise en page de plus en plus fluide, vivante et ce avec le moins de code possible (et si possible sans code du tout). Le double but : rendre les applications Silverlight encore plus attractives pour les utilisateurs et rendre Blend utilisable à 100% par un Designer sans mettre les mains dans le code.Plus...

Utiliser des éditeurs de valeurs dans les behaviors

[new:16/07/2010]Expression Blend 3 (et 4) fournit un certain nombre de ValueEditors personnalisés dans l'inspecteur de propriétés pour simplifier l’utilisation des Behaviors. Mais il y a un petit bonus : l’équipe de Blend a aussi introduit certaines extensions afin de permettre l’utilisation de ces éditeurs dans les Behaviors tiers.  Plus...

LogViewer pour Log4Net : Le lien

Un paragraphe a sauté dans le billet précédent et je me suis aperçu que le lien vers le projet avait été zappé... Donc c'est ici : http://yourlog4netviewer.codeplex.com/ ne vous laissez pas abuser par les imitations ! :-) J'ai eu du mal à trouver rapidement un nom pour le site CodePlex, LogViewer et autres noms du même type étaient pris. Alors ne confondez pas les projets. Celui-là c'est YOUR Log4Net viewer. Sorry pour cet oubli dans le billet précédent...