繁体   English   中英

如何使用C#返回上一个表格?

[英]How to go back to the previous form in c#?

我一直在寻找一种方法来返回到C#中的上一个表单。 我正在构建一个Bike Builder程序,基本上,它可以让您查看所需的零件,并返回到先前的表格并编辑购物车。

表格2将是“购物”表格,您可以在其中选择/取消选择您的产品。 表格3将是一个检查表,它将显示您到目前为止已放入购物车中的零件数量,并显示总数。 在表格3中,将有一个名为“返回”的按钮,它将使您返回表格2并更新购物车。

// This is form 2
public partial class frmSelectParts : Form
{
// variables and functions
// .......

    public frmSelectParts()
    {
        InitializeComponent();
        this.WindowState = FormWindowState.Maximized;
    }
}

//This is form 3
public partial class frmYourCart : Form
{
    public frmYourCart()
    {
        InitializeComponent();
        this.WindowState = FormWindowState.Maximized;            
        cbbShipping.Items.Add("Standard 5 - 10 days");
        cbbShipping.Items.Add("Express 3 - 5 days");
        cbbShipping.Items.Add("Over night 1 day");
    }
}

您可以按照Justin的建议Close ,也可以使用frmYourCart.Hide()frmSelectParts.Show() 使用“ Close将显示frmSelectParts表单,这取决于您是否要隐藏它们的更改。

它不是您所要求的,但是..如果可能的话,您只能创建一个表单并添加一个TabControl。 然后,您可以为每个任务使用一个选项卡。

用户可以通过使用选项卡标题返回,或者仍然可以使用后退按钮并使用SelectTab()方法显示上一个选项卡。

为避免有多个后退按钮,可以将其放在窗体上TabControl的前面。 在返回按钮的click事件中,您将执行以下操作:

    if (tabControl.SelectedIndex > 0) // Higher than first tab
       tabControl.SelectTab(tabControl.SelectedIndex - 1);

如果我是你,我只需在要显示的表单上调用.Show()方法,然后在要离开的表单上.Hide() (或.Close() )。

购物形式:

private void btnReview_Click(object sender, EventArgs e)
{
   reviewForm frmReview = new reviewForm();
   frmReview.Show();
   this.Hide();  // You could also call this.Close() instead.
}   

摘要表格:

private void btnBack_Click(object sender, EventArgs e)
{
   frmSummary frmSummary = new frmSummary();
   frmSummary.Show();
   this.Hide();  // You could also call this.Close() instead.
}  

暂无
暂无

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

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