【问题标题】:Windows forms how to manipulate different screensWindows窗体如何操作不同的屏幕
【发布时间】:2012-03-16 01:34:45
【问题描述】:

我有 asp.net c# 的程序,但现在我需要在 windows 窗体中创建一个应用程序,我试图查看一些教程,但它们都只显示一个窗体。这个概念在 windows 窗体中是如何实现的?

在 asp.net 中,您创建一个页面并用文本框、下拉菜单等控件填充它。也许还有一个带有“Go Next”的按钮,然后您将拥有另一个具有不同控件和自身功能的页面.因此,当您单击下一步时,您会执行类似Response.Redirect("SomePage.aspx"); 之类的操作..

这是如何在 Windows 窗体中完成的?我可以有多个窗体并从一个窗体导航到另一个窗体吗?如果是这样,在从一个导航到另一个时如何保存数据?

如果问题太简单,请原谅,但我是 windows 窗体的新手。

任何帮助将不胜感激

问候

【问题讨论】:

    标签: c# winforms visual-studio-2010


    【解决方案1】:

    您也可以创建UserControls 并用您的控件填充它们。然后,您可以在表单或容器中添加或删除它们。这就是我在应用程序中切换编辑页面的方式。

    使用 2 个UserControls 和一个Panel 作为容器的简单示例:

    public partial class Form1 : Form
    {
        UserControl1 usr1 = new UserControl1();
        UserControl2 usr2 = new UserControl2();
    
        public Form1()
        {
            InitializeComponent();
        }
    
        private void button1_Click(object sender, EventArgs e)
        {
            panel1.Controls.Clear();
            panel1.Controls.Add(usr1 );
        }
    
        private void button2_Click(object sender, EventArgs e)
        {
            panel1.Controls.Clear();
            panel1.Controls.Add(usr2 );
        }
    }
    

    【讨论】:

      【解决方案2】:

      基本上,您有一个父表单,可以衍生出任意数量的子表单。因此,在内存中持久化数据的情况下(否则您只使用数据库或文件或......),您可以在表单之间来回传递它,或者您可以将其全部存储在父表单中并访问其中的数据孩子的父母形式。我似乎找不到一个很好的视觉表示,但我在下面做了一些尝试:

      Parent
      |
      |-->Child
        |
        |->GrandChild
      |
      |->Child2
      

      因此,父级将创建一个新表单并使用 Show 或 ShowModal 显示它,其中 Modal 意味着在显示该表单时应用程序中的任何其他内容都无法获得焦点。而且,父窗体是这一切的根源,因此应用程序保持打开状态,直到父窗体关闭。

      第二种可能性

      您可以创建不同的控件,以便在主窗体的面板中进出。这可能更接近您在网络中所期望的。因此,基本上,您从默认或空屏幕开始。如果它是默认屏幕,那么它只是位于主窗体面板中的控件。单击按钮时,您要么删除旧控件并创建新控件以放置在其位置,要么创建新控件并将其放在旧控件之上,以便旧控件“消失”(直到您“关闭”/销毁该控件)。

      如果这没有意义,请告诉我,我会尝试更彻底地解释这个概念

      【讨论】:

        猜你喜欢
        • 2011-03-10
        • 2017-10-29
        • 2016-02-10
        • 1970-01-01
        • 1970-01-01
        • 2013-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多