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

VB.NET Discussion :

Retrouver l'instance d'une Form depuis une class


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 24
    Par défaut Retrouver l'instance d'une Form depuis une class
    Bonjours à tous

    J'ai une application qui fonctionne avec un MessageBox perso qui est géré via une classA qui appel une feuille frmMsgBox

    L'application se lance sur la feuille principale frmMain .
    Je souhaite retrouver l'instance de cette feuille (frmMain) depuis la classA, sans pour autant ajouter des paramètres à la classA, qui est utilisé dans beaucoup de projet.

    Ex:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    Public Class frmMain
     
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
        Dim msgBox As New classA
        msgBox.Show("test")
     
    End Sub
     
    End Class
     
     
    Public Class classA
     
      private fMessageBox As frmMsgBox
     
      public sub New()
         fMessageBox = New frmMsgBox
     
      end sub
     
      public sub Show
          Dim parentForm As Windows.Forms.Form
          parentForm = ????
     
         fMessageBox.Show(parentForm)
     
      end sub
    end class


    Toutes idées seront les bienvenues

    Merci

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    vu que tu ne veux pas la passer en paramètre c'est que tu veux un truc bricolé

    mais j'ai une proposition ! :

    regarder la pile des appels et analyser ce qu'il y a dedans pour voir si c'est une form



    sinon il est possible de faire une surcharge avec un paramètre en plus comme ca les anciens appels fonctionnent (sans toutefois connaitre la form)
    ou alors tu modifies tout, c'est pas la fin du monde ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 24
    Par défaut Instance de form
    Et oui, j'ai essayé en fouillant dans le System.Diagnostics.StackTrace / StackFrame mais je n'y suis pas arrivé !
    Ca donne principalement des infos texte !

Discussions similaires

  1. Accès à une méthode d'une form depuis une autre autre form
    Par arngrimur dans le forum Windows Forms
    Réponses: 16
    Dernier message: 13/01/2012, 15h45
  2. Réponses: 6
    Dernier message: 10/06/2010, 15h31
  3. Ouvrir une form depuis une class
    Par totoche dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 01/09/2006, 11h13
  4. Accéder au DataSet d'une form depuis une autre
    Par Lucien dans le forum Bases de données
    Réponses: 2
    Dernier message: 07/08/2006, 08h40
  5. Réponses: 3
    Dernier message: 16/01/2006, 16h02

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