如果DialogResult正常,请关闭父窗口

时间:2016-02-19 08:50:12

标签: c# winforms

目前我正在编写一个应用程序,其中有一个窗口,用于确认用户是否已完成编辑数据并让他们对编辑发表评论。用户可以确认或取消编辑。我想在子窗体对话框结果为OK时关闭父窗体,如果已取消则刷新数据。结果正确传递,但仍未关闭父表单。

我在其他视图上使用了ds.FormClose来运行refres。

我正在使用以下代码打开子表单。

        View ds = new View ();
        ds.userID = userID;
        ds.localID= localID;

        ds.FormClosed += ChildFormClosed; // i use this line to call a function when the child form is close 

        DialogResult dialogResult = new DialogResult(); // fetches the Dialog Result 
        dialogResult = ds.ShowDialog(); // opens the view 

        if (dialogResult != DialogResult.OK) // checks if the Dialog Result is OK
            this.Close();

2 个答案:

答案 0 :(得分:1)

if (dialogResult != DialogResult.OK) // checks if the Dialog Result is OK

不,它不会检查对话框结果是否为OK,它会检查是否 OK

这样做:

if (dialogResult == DialogResult.OK)

答案 1 :(得分:0)

在我看来,您无法关闭主表格并打开儿童表格。

如果主表单已关闭,则应用程序已关闭,程序无法打开新的子表单。

也许没有报道。

抱歉我的英文。