繁体   English   中英

管理对话框时出现System.InvalidOperationException

[英]System.InvalidOperationException when managing a dialog

我遇到了一个错误,称为System.InvalidOperationException。

附加信息:指定的元素已经是另一个元素的逻辑子级。 首先断开连接。

我已经在互联网上搜索了解决方案,但是没有一个解决我的问题。

我创建了一个名为“打开对话框”的按钮,以打开一个对话框。 打开对话框后,对话框中显示两个按钮:“保存”和“取消”。 “取消”的功能是关闭对话框。 但是,单击“取消”后,当我尝试通过单击“打开对话框”再次重新打开对话框时,遇到了上述错误。

我还将在此处发布事件处理方法的代码。

在MainWindow类别中:

private void openDialogButton_Click(object sender, RoutedEventArgs e)
        {
            PersonIDTable.ShowDialog();
        }

在ViewModel中:

public void ShowDialog()
        {
            PersonID.UserControls.PersonIDDialog dialog = new PersonID.UserControls.PersonIDDialog (this);
            dialog.Show();
        }

在Dialog类中:

private void CancelButton_Click(object sender, RoutedEventArgs e)
        {
            this.Close();
        }

你们有解决问题的想法吗? 您的帮助将不胜感激。

您几乎已将问题中的答案告诉了答案,因此关闭了对话框,因此无法重新打开它。 插入的创作PersonIDTableopenDialogButton_Click ,这应该修复它。

例:

Form1 form = new Form1();
form.ShowDialog();

本可以通过评论告诉您的,但是我的声誉不高。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM