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 & Spring - Exécution Spring à l'ouverture d'un fichier .xaml sous Visual Studio


Sujet :

Windows Presentation Foundation

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2008
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 97
    Points : 106
    Points
    106
    Par défaut WPF & Spring - Exécution Spring à l'ouverture d'un fichier .xaml sous Visual Studio
    Bonjour à tous,

    Ma configuration est la suivante : j'utilise Visual Studio 2008, le Framework .NET 3.5, WPF et Spring.

    J'ai une fenêtre nommée GlobalWindow qui est la fenêtre principale de mon application.

    J'ai un UserControl nommé UserControlLocalisationAndOption.

    Ma GlobalWindow contient un UserControlLocalisationAndOption.

    Au chargement de GlobalWindow, dans la méthode GlobalWindow(), je fais ceci :

    Code C# : 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
     
    try
    {
          //Récupération des composants placés dans Spring
          IApplicationContext ctx = ContextRegistry.GetContext();
          ...
    }
    catch (Exception ex)
    {
          //Message d'erreur pour l'utilisateur
          ClientUtils.ShowError("Impossible de charger le contexte...");
     
          //Fermeture de l'application
          Process.GetCurrentProcess().Kill();
    }
     
    InitializeComponent();

    Au chargement de mon UserControlLocalisationAndOption, dans la méthode UserControlLocalisationAndOption(), j'ai le même bout de code.

    A l'exécution, je n'ai aucun problème.

    Quand j'ouvre UserControlLocalisationAndOption.xaml sous Visual Studio, là non plus je n'ai pas de soucis.

    Par contre, j'ai un problème quand je tente d'ouvrir ma GlobalWindow.xaml sous Visual Studio.

    En effet, dans la méthode GlobalWindow(), quand il arrive sur l'instruction

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    InitializeComponent();

    il tente d'initialiser le UserControlLocalisationAndOption.

    Lors de cette initialisation de UserControlLocalisationAndOption, il entre dans la méthode UserControlLocalisationAndOption() et essaye d'exécuter le code.

    A ce moment là, le try échoue, il arrive dans le catch, il affiche le message d'erreur, puis ferme Visual Studio à cause de l'instruction :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    Process.GetCurrentProcess().Kill();

    Pour le moment, j'ai mis cette instruction en commentaire pour pouvoir ouvrir
    GlobalWindow.xaml sous Visual Studio mais ce n'est pas satisfaisant.

    Mes interrogations sont les suivantes :

    1 - Pourquoi il me pose des problèmes quand j'ouvre ma GlobalWindow.xaml alors qu'il n'y a aucun soucis quand j'ouvre UserControlLocalisationAndOption.xaml tout seul ?

    2 - Pourquoi tente-t-il d'exécuter le code ?

    3 - Comment faire pour ouvrir GlobalWindow.xaml sans mettre mon instruction en commentaire?

    Merci pour votre aide.

    Cécile.

  2. #2
    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
    Hello,

    2) Il tente d'exécuter ce code car le designer fonctionne sur le principe de la désérialization à la volée

    3) Pour l'empêcher d'exécuter ton code, essaye ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (!System.ComponentModel.DesignerProperties.GetIsInDesignMode(this))
            {
                IApplicationContext ctx = ContextRegistry.GetContext();
            }

  3. #3
    Membre régulier
    Inscrit en
    Novembre 2008
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 97
    Points : 106
    Points
    106
    Par défaut
    Rebonjour,

    Ca marche. Merci beaucoup ^^

    Cécile.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ouverture d'excel sous Visual Studio
    Par royersebastien dans le forum Visual Studio
    Réponses: 5
    Dernier message: 02/05/2011, 11h20
  2. [XL-2003] Empêcher l'ouverture d'un fichier XLSX sous Excel 2003
    Par wyzer dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/03/2011, 15h25
  3. exécuter une commande sur tous les fichiers des sous dossiers
    Par Concombre Masqué dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 05/03/2009, 01h15
  4. Réponses: 1
    Dernier message: 28/03/2008, 16h06
  5. Ouverture d'un fichier .mdb sous Access depuis MATLAB
    Par amalirou dans le forum MATLAB
    Réponses: 3
    Dernier message: 16/11/2007, 21h58

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