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 Forms Discussion :

Ouvrir Form depuis variable


Sujet :

Windows Forms

Vue hybride

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

    Informations forums :
    Inscription : Février 2009
    Messages : 92
    Par défaut Ouvrir Form depuis variable
    Bonjour,

    En corollaire à mon autre post, ma question est toute simple : comment ouvrir un formulaire à partir d'une variable? ... genre :

    dim mavar as ?
    mavar=me.combobox.selecteditem (ou autre)
    mavar.show

    Un grand merci d'avance!

    Amicalement,

    JFB

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    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 204
    Par défaut
    question qui revient souvent, et répondu assez souvent aussi, fait une recherche sur le forum
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 92
    Par défaut
    Merci Sperot, je dois être plus bête que la moyenne... J'avais bien vu que la question avait déjà été posée, mais je n'arrive pas à implémenter les solutions, que ce soit via directcast ou validator machin... Et surtout j'aimerais comprendre...

    J'ai une variable string mavar,
    mavar= me.combobox1.selecteditem (qui est le nom du formulaire que je veux ouvrir, soit form4 par exemple)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim mavar As String = Me.ComboBox1.SelectedItem
    Dim f As Form = CType(Activator.CreateInstance(Nothing, mavar).Unwrap, Form)
    Ca me retourne une erreur :
    Impossible de charger le type 'Form4' à partir de l'assembly 'OrderManager, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.

    Apparemment, il a bien considéré ma variable, mais il ne trouve pas le type Form4, alors que la classe existe...

    Je sèche...

    Merci d'avance. JFB

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

    Informations forums :
    Inscription : Février 2009
    Messages : 92
    Par défaut
    Bonsoir à tous,

    Excusez-moi de revenir à la charge, mais je sèche toujours...

    Voici le code que j'essaye, qui correspond aux deux posts que j'ai trouvé sur le même sujet en vb.net sur ce forum :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim strF As String = Me.TextBox1.Text
    'Dim frm As New Form = CType(Activator.CreateInstance(Nothing, strF).Unwrap, Form)
    Dim frm As Form = DirectCast(System.Activator.CreateInstance(System.Type.GetType(strF, True, True)), Form)
    frm.Show()
    Je saisis le nom de mon form dans le textbox, et dans les deux cas, j'ai le même message : impossible de charger le type frmAvion à partir de l'assembly.... Mon form frmAvion existe bel et bien...

    Une âme charitable pourrait-elle m'expliquer où je fais faux?

    Merci d'avance,

    JFB

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    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 204
    Par défaut
    il faut peut etre le namespace devant
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

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

    Informations forums :
    Inscription : Février 2009
    Messages : 92
    Par défaut
    Sperot,

    C'est une question ou une suggestion?

    Si c'est une question, je n'ai pas la réponse, si c'est une suggestion, je ne sais pas où indiquer le namespace. Pour info, la solution "commentée" est texto celle que tu donnais dans un autre post, sans plus de détails. Et pour info aussi, les deux posts traitant du sujet ne disent pas si la solution a fonctionné... et j'en doute, en tout cas en l'état.

    Je vais trouver une solution, merci de ton aide,

    JFB

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

Discussions similaires

  1. Ouvrir un Form depuis Form1
    Par Arthur59 dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/01/2010, 21h46
  2. Réponses: 17
    Dernier message: 15/04/2007, 12h28
  3. Ouvrir word depuis une form
    Par cyberma dans le forum Windows Forms
    Réponses: 3
    Dernier message: 09/03/2007, 14h34
  4. 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
  5. Ouvrir Form depuis SousForm selon Id
    Par samlepiratepaddy dans le forum Access
    Réponses: 12
    Dernier message: 09/11/2005, 10h59

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