Je reçois l'exception suivante:WPF Erreur lors de la mise en œuvre Login.xaml
"objet Nullable doit avoir une valeur"
Tout fonctionnait quand j'utilisais
StartupURI="MainWindow.xaml
"
mais je voulais mettre en place un écran de connexion, donc je l'ai changé en
Startup="Application_Startup"
puis créé la méthode suivante dans App.xaml.cs:
private void Application_Startup(object sender, StartupEventArgs e)
{
UpdateAccounts();
bool result = true;
///*
LoginWindow login = new LoginWindow();
result = login.ShowDialog().Value;
/* */
if (!result)
{
return;
}
MainWindow window = new MainWindow();
bool main = window.ShowDialog().Value;
}
Est-ce que quelqu'un a une idée ce qui se passe? Ou des suggestions sur ce qui est la meilleure pratique pour la mise en œuvre de l'interface de connexion.
L'exception est levée à
bool principal = window.ShowDialog() Valeur.
Exception Stack Trace:
at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
at System.Nullable`1.get_Value()
Mon MainWindow.xaml était ma fenêtre par défaut qui était quand l'application a commencé chargé, et il a travaillé prefectly bien. Il y a beaucoup de code à l'intérieur. Quelques listes de sélection, quelques listes déroulantes, calendrier mensuel. Il se connecte également à une base de données d'accès.
Pour moi, il semble que ma fenêtre est de retour de ShowDialog() tout de suite, sans me laisser définir DialogResult.
Mise à jour: Je ne suis pas une exception si je change mon code.
private void Application_Startup(object sender, StartupEventArgs e)
{
UpdateAccounts();
bool result = true;
///*
LoginWindow login = new LoginWindow();
result = login.ShowDialog().Value;
/* */
if (!result)
{
return;
}
MainWindow window = new MainWindow();
window.ShowDialog();
}
mais je ne suis pas aussi ma fenêtre principale affiche, et l'application se ferme juste après la connexion
J'écrasai cela et tout fonctionne très bien, mais bien sûr, nous n'avons pas le code à "UpdateAcccounts()" ou la LoginWindow, ou tout ce que vous avez fait à MainWindow. Pouvez-vous donner plus d'informations sur ce qui se passe dans ceux-ci? En outre, si vous pouvez nous donner plus d'informations sur l'endroit où l'exception est lancée, cela aiderait aussi ... –
Mis à jour, je n'obtiens pas d'exception si j'utilise simplement window.ShowDialog(), au lieu d'assigner le résultat à une variable. Mais cela ferme juste mon application sans afficher ma forme et attendre. Y a-t-il quelque chose que j'ai besoin de remplacer dans ma MainWindow pour que cela fonctionne correctement? Il hérite de Windows donc il devrait fonctionner correctement ne devrait-il pas? –