C# “显示对话框”不显示该对话框

C# “显示对话框”不显示该对话框,c#,wpf,windows,C#,Wpf,Windows,我试图找出ShowDialog()没有为我显示对话框的原因。 我有一个应用程序,其中有一个凭证对话框(a),供用户输入凭证。我还有另一个对话框(B),根据用户的凭证显示一些自定义消息。 在用户在中输入凭据后,我正在对其进行处理。 当我试图在B中显示消息时,ShowDialog()没有显示对话框B 你们能想出什么理由吗 代码如下: bool isInternetConnected = class.CheckInternetConnection(ref error); if(!String.Isn

我试图找出ShowDialog()没有为我显示对话框的原因。 我有一个应用程序,其中有一个凭证对话框(a),供用户输入凭证。我还有另一个对话框(B),根据用户的凭证显示一些自定义消息。 在用户在中输入凭据后,我正在对其进行处理。 当我试图在B中显示消息时,ShowDialog()没有显示对话框B

你们能想出什么理由吗

代码如下:

bool isInternetConnected = class.CheckInternetConnection(ref error);

if(!String.IsnUllOrEMpty(error))
{
                DialogBox dialogBox = new DialogBox();
                dialogBox.Title = "Credentials";
                dialogBox.State = DialogBox.States.NoFooter;
                dialogBox.ShowInTaskbar = false;

                CredentialsContent Credentials = new CredentialsContent();
                Credentials.ContentCompleted += new EventHandler<ContentCompletedEventArgs>(
                                                                    dialogBox.OnContentCompleted);

                dialogBox.MainContent = Credentials;
                bool? result = dialogBox.ShowDialog();
                hasAccess = result.HasValue ? result.Value : false;

}

 UpdateDialog updateDialog = new UpdateDialog();
                updateDialog.ShowModal = true;
                bool? isTrue = updateDialog.ShowDialog();
bool isInternetConnected=class.CheckInternetConnection(参考错误);
如果(!String.IsnUllOrEMpty(错误))
{
DialogBox=新建DialogBox();
dialogBox.Title=“凭证”;
dialogBox.State=dialogBox.States.NoFooter;
dialogBox.ShowInTaskbar=false;
CredentialsContent凭据=新的CredentialsContent();
Credentials.ContentCompleted+=新事件处理程序(
对话框。OnContentCompleted);
dialogBox.MainContent=凭证;
bool?result=dialogBox.ShowDialog();
hasAccess=result.HasValue?result.Value:false;
}
UpdateDialog UpdateDialog=新的UpdateDialog();
updateDialog.showmodel=true;
布尔?isTrue=updateDialog.ShowDialog();
我把它解决了。 当时的情况是,windows将第一个窗口(A)视为主窗口。当它关闭时,下一个窗口(B)被视为无关紧要。 因此,即使使用showdialog()也没有显示它

诀窍是在应用程序开始时定义UpdateDialog()。 这里回答了同样的问题:

您是否观看了节目的执行过程?是否存在导致执行通过ShowDialog调用的逻辑语句,例如If或Select情况?是否存在异常(即使它没有使程序崩溃,也请检查输出窗口)。我正在调试程序,它只是通过对话框B步骤的步骤showdialog(),而不是在那里停止并显示对话框。@alice7:可以发布一些代码吗?请显示执行showdialog()的代码方法并且没有向输出窗口发送InvalidOperationException?这是您正在调用ShowDialog的窗口对象吗?你能通过一些代码来说明它是如何被实例化的,以及在哪里进行调用的代码吗?