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 :

[TabItem/TabControl]Détruire un élément


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 84
    Par défaut [TabItem/TabControl]Détruire un élément
    Bonjour à tous, comme expliqué précédemment, j'ai une appli avec des TabItem qui contiennent chacun une appli.

    J'ai la possibilité d'enlever un TabItem avec un petit bouton Close, le truc, c'est que tous ce que je fait c'est enlever le TabItem de mon TabControl

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.Items.Remove(tabItem);
    Du coup, l'appli qui est chargé à l'intérieur ne se kill jamais.

    Existe-t-il un équivalent de Dispose pour les controles wpf?

    Merci

  2. #2
    Membre Expert
    Avatar de laedit
    Homme Profil pro
    Consultant études et développement
    Inscrit en
    Décembre 2006
    Messages
    1 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant études et développement
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 344
    Par défaut
    Là ça ne serait pas au contrôle d'être "disposé", mais à l'appli contenu par le TabItem.

    As tu un moyen de récupérer l'instance de cette appli pour la fermer ?
    Blog - Articles - Framework

    MSDN vous aide, si si, alors n'hésitez pas à y faire un tour avant de poser une question.
    Ah, et n'oubliez pas, Google peut répondre à la majorité de vos questions.

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Par défaut
    quand tu parle d'appli sur la tabitem tu veux dire quoi ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 84
    Par défaut
    @laedit : Oui mon TabItem peut accèder à l'appli qu'il possède, par contre je ne peut pas vraiment demander à l'appli de se fermer.

    @ikeas : En fait lorsque je crée mon TabItem, l'utilisateur à la possibilité de choisir entre différentes application (modules). Losqu'il clique sur l'icone correspondant au module qu'il souhaite ouvrir, mon application s'occupe de charger la dll correspondant au module et de lancer une instance de celui ci dans le TabItem. Voilà

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Par défaut
    en general on a ce genre de probleme quand
    - soit l'application possède des thread et qu'il ne sont pas marqué isbackground = true (et donc ils restent actif meme quand tu as femer ou detruit ton tab)
    - quand il reste un point d'ancrage a l'appli, par exemple des events

    dans tous les cas
    - mettre les thread en isbackground = true
    - evenentuellement marquer ta classe en IDisposable, mettre le code de destruction (demapping message, arret des thread) dans le dispose, et appeler le dispose du content style, par exemple
    if(tabitem.content is idisposable) .....

    pour tester cela je te propose de faire une classe vide que tu vas instancier sur ton tabitem, si tu n'as pas de prob c'est que les problemes que j'ai evoqué sont ceux que tu rencontre

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 84
    Par défaut
    Merci beaucoup Ikeas, visiblement, c'était bien les problèmes que tu as cité .

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

Discussions similaires

  1. Comment détruire un élément dynamique
    Par sebyo dans le forum Débuter
    Réponses: 4
    Dernier message: 10/06/2009, 17h44
  2. [TabControl] Comment récupérer le nom du TabItem sélectionné ?
    Par modafine dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 05/09/2008, 13h23
  3. [WPF]TabControl dans un TabItem
    Par guitoux1 dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 15/06/2007, 19h22
  4. Détruire un élément en Jscript, créé dynamiquement en asp.net
    Par mappy dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/10/2006, 09h04

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