Dot.Blog

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

Livre C# gratuit

[new:30/10/2011]Posséder un livre de référence sur C# est toujours utile : ce langage est subtile et ses arcanes réservent parfois des surprises (voir mon quizz c# qui en a dérouté plus d’un !). Patrick Smacchia, éditeur de l’excellent outil NDepend, rend publique et gratuite la dernière édition de son livre “Pratique de .NET 2 et C#2”.Plus...

C# : créer des descendants du type String

[new:30/09/2011]C’est un peu un piège, bien entendu, la classe String est “sealed” et il est donc impossible d’en hériter, comme d’autres classes de base du Framework... Pourtant le besoin existe. Pourquoi vouloir des chaines de caractères descendant de string (ou d’autres de base) ? Comment contourner l’interdiction du Framework ? Répondre à ces questions est le thème du jour !Plus...

Silverlight : accéder à l’IP du client (version 2)

[new:30/06/2011]Accéder à l’IP du client est parfois nécessaire, Silverlight étant une technologie côté client tournant dans une sandbox cette information ne lui est pas accessible. Dans un précédent billet je vous ai montré la façon classique, via un service Web, d’obtenir l’IP du client. Aujourd’hui je vous propose une astuce d’un style très différent.Plus...

#if versus Conditional

[new:15/02/2011]La compilation conditionnelle n’est pas une grande nouveauté, les #if sont utilisés sous cette forme ou d’autres dans de nombreux langages depuis des temps immémoriaux... Sous C# nous disposons d’un outil de plus, l’attribut “Contional” qui reste à ma grande surprise méconnu, en tout cas fort peu utilisé. Réparons cette injustice et découvrons rapidement cet outil.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...

Silverlight : charger une image sur l’hôte

[new:16/6/2010] Charger une image depuis un serveur est un sujet que j’ai déjà abordé (voir: Silverlight : Charger une image dynamiquement). Charger une image depuis la machine hôte me semblait simple et je n’avais pas encore abordé le sujet. Pourtant, en lisant certaines questions que je reçois, force est de convenir que cela ne doit pas être si évident. Alors ne restons pas dans le questionnement et passons à la réponse, qui est courte. Plus...

NDepend 3 : votre code est une base de données en or…

[new:10/6/2010]NDepend est un outil très intelligent dont je vous ai déjà parlé (voir le billet Visual NDepend un outil d'analyse de code original et puissant ainsi que l’allusion directe qui y est faite dans Le retour du spaghetti vengeur). La version 3 est désormais totalement intégrée à l’IDE de VS 2010 ce qui rend son utilisation encore plus simple, directe et rapide. NDepend transforme votre code en une mine d’or ! Tout code, projet, solution devient une base de données qui peut être interrogée et obtenir une vision totalement neuve sur ses forces … et ses défauts !Plus...

Xaml Dynamique

Xaml n’est pas compilé, ce qui signifie que le runtime l’interprète à l’exécution. Cet interpréteur est donc présent aussi bien quand on exécute une application WPF que Silverlight. Cela peut permettre des choses intéressantes comme la création de code Xaml dynamiquement au runtime…Plus...