ㅤㅤㅤㅤㅤ175 2022-03-01 14:27 采纳率: 50%
浏览 92
已结题

各位C#同学们,请问C#在一个页面中点击注册怎么能跳转到注册页面

问题遇到的现象和发生背景

各位C#的同学们你们好!我是刚从java转到C#的小新,虽然和java很像但是很多东西还是不是很明白。
问题是今天再练习登录和注册的时候,登录是可以的跳转成功的但是在注册时候点击还是会跳转到登录成功的页面,我在Program里面也写了From3的注册页面如果都在Program里面加上注册的那么登录成功和注册的页面的都会一一跳转出来现在应该怎么办?

问题相关代码,请勿粘贴截图

static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
//Application.Run(new Form2());
Login login = new Login();
login login2 = new login();
//界面转换
login.ShowDialog();
if (login.DialogResult == DialogResult.OK)
{
login.Dispose();
Application.Run(new MainForm());
// Application.Run(new Form10());

        }
        else if (login.DialogResult == DialogResult.Cancel) {
            login.Dispose();
            return;
        }

这个是在Program里面的代码是不是这里有问题

运行结果及报错内容

运行之后都是可以运行出来但是登录成功和注册的页面都会出来

我的解答思路和尝试过的方法
我想要达到的结果

我想点击登录输入账号密码可以出来登录成功的,点击注册可以出来注册的页面给分开就可以
我用.Net来完成,不需要考虑数据库,因为我现在做的不需要考虑数据库,最好是能详细解答一下

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2022-03-01 15:17
    关注

    题主确认第二句没报错?第二句login是变量,不是类型了

    img


    可以在登录页面点击不同按钮设置登录窗口的DialogResult返回值,然后Program.cs中根据返回值运行不同的窗体就行了。

    简单示例如下

    img

    Program.cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace WindowsFormsApp4
    {
        static class Program
        {
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
    
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
    
                Login login = new Login();
                login.ShowDialog();
                if (login.DialogResult == DialogResult.OK)
                {//点击登录
                    Application.Run(new MainForm());
    
                }
    
                else if (login.DialogResult == DialogResult.No)
                {//点击的注册
                    Application.Run(new Register());
                }
                else
                { //直接关闭了窗口不做任何操作或者执行需要的代码
    
                }
            }
        }
    }
    
    

    Login窗体按钮事件

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace WindowsFormsApp4
    {
        public partial class Login : Form
        {
            public Login()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {//点登录设置返回值为DialogResult.OK;
                this.DialogResult = DialogResult.OK;
            }
    
            private void button2_Click(object sender, EventArgs e)
            {//点登录设置返回值为DialogResult.No;
                this.DialogResult = DialogResult.No;
            }
    
        }
    }
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月9日
  • 已采纳回答 3月1日
  • 创建了问题 3月1日

悬赏问题

  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan