IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

WPF signe la fin des Windows Forms ?


Sujet :

Windows Presentation Foundation

  1. #61
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    C'est ca que je ne trouve pas clair

    Serait-il possible par exemple de binder dans un contrôle qui affiche plusieurs propriétés d'un objets (en winform j'aurais pris l'exemple d'une datagridview), d'afficher d'une part le noms de chaque entreprise et d'autre part le nom de l'employé ayant le plus gros salaire. En d'autre termes, je voudrais ici pouvoir binder à un contôle wpf n'importe quelle propriété de la hierrarchie issue de la classe Company et résultant d'une expression de mon choix. Ceci sans toucher à la structure de nos classes Company et Worker. Ca n'était pas trivial en winform. Il fallait écrire une vue des objets de la collections en réécrivant les proporydescriptor... est-ce plus facile en WPF ? Ou cela se fait-il de la même manière ? J'ai entendu dire que le moteur de binding WPF se basait sur la réflexion. Cela veux t-il dire qu'on ne peut plus "bidouiller" avec les propertydescriptors ?

  2. #62
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    Je vais essayer de formuler plus clairement :

    En winform, j'ai fais une classe qui implémente ITypedList et qui possède une méthode GetItemProperties qui renvoie une PropertyDescriptorCollection. Une instance de cette classe peut alors être mise entre une collection et un contrôle et l'on peut, dans cette méthode GetItemProperties(), réécrire les PropertyDescriptor des objets de la collection pour afficher des "fausse propriétés" calculées.
    Voici un exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
        public class Company
        {
            public string Name { get; set; }
            public Boss Name { get; set; }
            public List<Worker> Workers { get; set; }
        }
     
        public class Boss
        {
            public string Name { get; set; }
        }
     
        public class Worker
        {
            public string Name { get; set; }
            public float Salary { get; set; }
        }
    Si par exemple, je binde une List<Company> à une DatagridView, je peux grâce à ma classe afficher en même temps la propriété Name des entreprises dans une colonne et la propriété Name du Boss dans une autre colonne.

    WPF permet de faire cela directement grâce à l'attribut path.
    Mais peut on écrire n'importe qu'elle expression dans cet attribut (ou un autre) par exemple pour afficher le nom du Salarié ayant le plus gros salaire ?

    Si ça ne peut pas être fait, y t-il toujours la possibilité d'écrire une vue le l'objet comme je le faisais en winform et de binder cette vue d'objet aux contrôle ?
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  3. #63
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    OK, je comprend mieux

    Non, on ne peux pas, dans Path, mettre d'expression. On doit marquer le nom d'une propriété public. Par contre, rien ne t'empêche d'avoir une prop publique qui contient ce champ calculé

  4. #64
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    Oui... par contre ça oblige à modifier la couche business alors que l'expression peut n'avoir qu'une vocation d'affichage...
    Est-il possible en WPF de travailler sur des vues d'objets comme je l'ai fait en windows form c'est à dire de binder un contrôle à une classe implémentant ITypedList et renvoyant dans GetItemProperties() des "propriétés virtuelles" ?
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  5. #65
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Je n'ai jamais fait ce genre de choses mais je ne vois pas pourquoi cela ne fonctionnerait pas

  6. #66
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    Ce qui m'inquiétait c'est que j'ai lu que le moteur de binding de WPF se basait sur la reflexion et donc, je supposais, plus sur les propertyDescriptor...
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  7. #67
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Pour t'apporter une réponse plus complète, il faudrait faire des tests plus poussés, c'est tout ce que je peux te dire pour le moment....

  8. #68
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    J'essayerai de les faire à l'occasion. Merci.
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  9. #69
    Membre régulier Avatar de monstroplante
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 107
    Points : 76
    Points
    76
    Par défaut
    Je relance un peu le débat mais il me semble qu'un point important n'a pas été suffisament approfondit.
    Si on se demande pourquoi WPF remplacerait les WinForms classiques, on s'apperçoit que les WinForms sont assez aboutis et permettent de répondre à la majorité des besoins de façon efficace et rapide.
    Mais si on regarde du côté des WebForm, il me semble que la comparaison est toute autre. Le langage HTML (+css, js,...) est viellissant, a un comportement souvent imprévisible et est interprété de façon différente par les différents navigateurs. Personnellement, je suis souvent imressionné de voir le temps que je perd pour des problèmes d'interface simples alors que des développements C# beaucoup plus importants sont réalisés rapidement. Du coup, sans compter le temps d'apprentissage de la techno, je pense que WPF (Silvelight) peut faire gagner beaucoup de temps !
    Si on regarde la réalité des entreprises, la mode est plus aux applications Web (plus faciles à déployer) qu'aux winforms. C'est pourquoi je pense que beaucoup de sociétés gagnerons du temps (et de l'argent) à passer sur WPF. Et, si les développeurs utilisent WPF pour leurs applications Web, ils seront surement tentés de l'utiliser aussi pour leurs applications Windows...

  10. #70
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    Oui moi je serais curieux de voir quel est déjà le pourcentage de post client ou silverlight est installé.
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  11. #71
    Expert éminent
    Avatar de neo.51
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    2 663
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 663
    Points : 6 418
    Points
    6 418
    Par défaut
    Silverlight a un énorme défaut qu'on retrouve dans toute techno web qui n'est pas html/javascript : pas de référencement par les moteurs de recherche !!!

    Donc pour de l'intranet c'est surement une techno à envisager mais l'utilisation massive sur internet c'est pas pour demain, parce que je connais pas beaucoup de webmaster qui veulent utiliser une techno qui fait baisser leur googlerank

  12. #72
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Pour ma part, autant j'use et abuse de certaines parties du 3.0 (WFF surtout, WCF un peu), je ne pense pas du tout perdre du temps à me pencher sur WPF tant que cela ne sera pas indispensable.

    Je trouve la valeur ajoutée proche de 0 pour les utilisateurs.

    Just my two cents

    EDIT : Purée, chui un membre é-clai-ré maintenant

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  13. #73
    Membre régulier Avatar de monstroplante
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 107
    Points : 76
    Points
    76
    Par défaut
    Oui moi je serais curieux de voir quel est déjà le pourcentage de post client ou silverlight est installé.
    Pas des masses à mon avis. Mais il ne faut pas oublier que la V1 finale n'est sortie que depuis deux mois et demi (il me semble). Donc pour l'instant, je pense que seuls quelques développeurs et des powers users curieux ont sauté le pas. L'adoption de cette techno pour des sites web grand public va prendre du temps je pense mais pour les applications d'entreprise, il est plus facile de déployer siverlight sur l'ensemble des postes client de l'entreprise. Cela pourrait accélerer les choses mais il va tout de même faloir attendre un peut...

  14. #74
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Citation Envoyé par neo.51 Voir le message
    Silverlight a un énorme défaut qu'on retrouve dans toute techno web qui n'est pas html/javascript : pas de référencement par les moteurs de recherche !!!

    Donc pour de l'intranet c'est surement une techno à envisager mais l'utilisation massive sur internet c'est pas pour demain, parce que je connais pas beaucoup de webmaster qui veulent utiliser une techno qui fait baisser leur googlerank
    Attention, rien ne t'oblige à faire l'intégralité de tes pages en Silverlight: tu peux tout simplement faire une bannière ou un menu en SL

  15. #75
    Expert éminent
    Avatar de neo.51
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    2 663
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 663
    Points : 6 418
    Points
    6 418
    Par défaut
    même si c'est un menu, prennons un exemple simple, t'as un site de vente en ligne :

    Ton menu représentant les catégories d'articles à vendre ne sera pas référencé. Pire : si tes pages ne sont accésibles que via ce menu certainnes pages contenant tes articles à vendre ne seront jamais indéxés !!!

    tous ces problème là n'existent pas si tu fais un site avec un rendu html et javascript.

  16. #76
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Pour moi SL est une techno pour faire des animations, pas des sites webs entiers. Bien sur on peut tout comme en flash mais on rencontrera les problèmes de referencement, mais SL est génial pour faire des players vidéos, des players photos, des jeux aussi, enfin tout ce qu'on fait en Flash quoi.
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  17. #77
    Membre averti Avatar de BOUBOU81
    Profil pro
    system integrator
    Inscrit en
    Juin 2004
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : Allemagne

    Informations professionnelles :
    Activité : system integrator

    Informations forums :
    Inscription : Juin 2004
    Messages : 358
    Points : 315
    Points
    315
    Par défaut
    Il me semblait justement que XAML permettait le référencement contrairement à du flash
    (PS: je crois l'avoir entendu lors du silverlight tour)
    Boubou from The SpAcE GaLaXy....
    AhAhAhAhAh

  18. #78
    Membre régulier Avatar de monstroplante
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 107
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par Skyrunner Voir le message
    Pour moi SL est une techno pour faire des animations, pas des sites webs entiers. Bien sur on peut tout comme en flash mais on rencontrera les problèmes de referencement, mais SL est génial pour faire des players vidéos, des players photos, des jeux aussi, enfin tout ce qu'on fait en Flash quoi.
    Oui, il permet de faire de jolies animation. Mais en quoi cela l'empèche-t-il de faire des choses plus sobres ?

  19. #79
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Citation Envoyé par monstroplante Voir le message
    Oui, il permet de faire de jolies animation. Mais en quoi cela l'empèche-t-il de faire des choses plus sobres ?
    A quoi penses-tu par exemple ?
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  20. #80
    Membre régulier Avatar de monstroplante
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 107
    Points : 76
    Points
    76
    Par défaut
    Hé bien, comme je l'évoquais précedement, je trouve que dans un projet d'application web, on perd beaucoup de temps à regler des problèmes d'UI (pas vous ?). Personellement, je rève de pouvoir me débarasser d'html pour utiliser un nouveau standard plus stable, prévisible et uniformément interprété par les clients. XAML, me semble pouvoir répondre à ces besoins. Dans cette conversation, nous comparons les WinForms à XAML et semblons d'accord pour dire que globalement XAML est mieux et permet de faire tout ce que font les WinForms. Pour ma part, je trouve ques les WinForms sont déjà beaucoup plus aboutis que les WebForms actuels. XAML reprend ce qui est bon dans les WinForms tout en s'inspirant de la logique déclarative par balise de HTML qui est selon moi le seul atout que l'HTML conservait. Cela m'amène à me demander pourquoi ne pas utiliser XAML pour tous les développements Web d'entreprise (même simple) réalisés en .NET... Et, à partir de là, pourquoi ne pas utiliser la même techno pour nos applications Windows.

Discussions similaires

  1. Mélanger des Windows Form et du WPF
    Par PhilTheGap dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 30/04/2008, 11h25
  2. [XAML/WPF] Equivalent du DataGridView des Windows Forms
    Par Nadd dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 09/01/2008, 20h35
  3. WPF signe la fin des Windows Forms ?
    Par vandamme dans le forum Framework .NET
    Réponses: 17
    Dernier message: 16/07/2007, 14h36
  4. A propos des Windows Forms
    Par sheitan dans le forum C++
    Réponses: 2
    Dernier message: 13/02/2006, 19h54
  5. Pointeur sur des windows form
    Par durans dans le forum MFC
    Réponses: 1
    Dernier message: 03/02/2006, 15h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo