0

我有一个表格(frmcustlist)。在此列表中,我有一次使用数据集扫描列表并检查它现在是否为 0(没有客户离开)。

在这个阶段,我会弹出一个输入框(对话框)来询问新的客户名称。如果他们按 OK,一切都很好。我也对输入框进行了验证。但是,如果他们按 CANCEL,我可以让它退出对话框,但不能关闭调用对话框的 frmcustlist。

using (inputbox ipfirst = new inputbox("Enter Customer First Name:", "", ""))
                    {
                        if (ipfirst.ShowDialog() == DialogResult.OK)
                        {
                            newfirstname = ipfirst.answer;
                        }
                        else
                        {
                            this.Close();
                        }

                    }

现在,this.close()根本不起作用..所以我使用return;which 停止它继续询问姓氏和出生日期.. 但我希望它停止询问问题(如返回)以及关闭 frmcustlist。...感谢您提供的任何建议。

附言。这出现在几个地方,但也被调用frmcustlist_load..我不知道这是否会有所作为!

4

1 回答 1

1

史蒂夫在评论中做出了回答。由于 frmcustlist 本身被称为对话框,所以我最终不得不给该对话框一个取消结果。

有效的最终代码:

using (inputbox ipfirst = new inputbox("Enter Customer First Name:", "", ""))
                    {
                        if (ipfirst.ShowDialog() == DialogResult.OK)
                        {
                            newfirstname = ipfirst.answer;
                        }
                        else
                        {
                            DialogResult = DialogResult.Cancel;
                            return;
                        }

                    }
于 2017-08-31T12:02:06.827 回答