c# Show Formulaire Windows
Donc, je suis un peu de mal ici. Je suis en train d'écrire une application console windows en C# et vient juste de faire un formulaire de connexion pour l'application appelée frmLogin.
J'ai essayé d'utiliser le MS méthode documentée;
Form f = new Form();
f.ShowDialog();
mais cela a évidemment des charges/affiche un formulaire vierge et pas la forme j'ai défini dans le concepteur de formulaire.
Dans mon application principale, je veux être en mesure d'afficher le formulaire de connexion par programmation, mais lorsque j'essaie de l'utiliser;
frmLogin.ShowDialog();
il me dit que "Une référence d'objet est requise pour la non-champ statique, méthode ou une propriété du Système".De Windows.Les formulaires.Forme.ShowDialog()'
Dans les vieux jours, j'ai pu afficher un formulaire en utilisant simplement l'extrait ci-dessus du code. Alors, évidemment, quelque chose a changé depuis la dernière fois, j'ai écrit une console windows app.
Quelqu'un peut me montrer l'erreur de mes moyens?
Quel est le nom de la classe de votre frmLogin. Au lieu d'utiliser la forme générique de la classe dans votre nouveau relevé de compte.
OriginalL'auteur Skittles | 2013-11-12
Vous devez vous connecter pour publier un commentaire.
Cela crée une nouvelle instance de type
Form
:Qui, bien sûr, est une forme vide. Il semblerait que votre type est appelé
frmLogin
. Normalement, cela sonne comme un nom de variable et non pas un nom de classe, mais l'erreur que vous obtenez ici me dit que c'est une classe:Étant donné que, alors le moyen le plus rapide pour résoudre votre problème serait de créer une instance de votre formulaire et de le montrer:
Cependant, en conformité avec les normes de nommage et des conventions (pour aider à prévenir de futures confusion et de problèmes), je très recommande de renommer le formulaire lui-même à quelque chose comme:
Ensuite, vous pouvez utiliser quelque chose comme
frmLogin
le nom de la variable, qui est beaucoup plus une approche commune:Si vous voulez économiser de l'espace, essayez de
new LogingForm().ShowDialog();
OriginalL'auteur David
Le problème est que, avec l'extrait de code que vous avez pris à partir de Microsoft, vous étiez à la construction du Type de base. Vous avez besoin pour construire votre formulaire. Ainsi, au lieu de
new Form
, vous construire unnew frmLogin
:OriginalL'auteur Mike Perrenoud
Si cela ne résout pas votre problème, je vais supprimer ma réponse, mais, je suis en supposant que vous n'êtes pas à l'instanciation de votre formulaire:
Cela fonctionne bien pour moi. Bien que personnellement, je voudrais simplement utiliser le
.Show()
méthode:OriginalL'auteur Brian
Créer l'objet de la FORME que vous essayez d'ouvrir
par exemple "frmStudent"
Méthode 1:
Méthode 2:
Il va ouvrir le formulaire , mais vous ne pouvez pas passer à une autre forme jusqu'à ce que vous le fermiez.
OriginalL'auteur Syed Shayan Ali Shah