首页 新闻 搜索 专区 学院

C#窗体程序

0
[已解决问题] 解决于 2012-05-23 15:25
static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
frmLogin login = new frmLogin();
            if (login.ShowDialog() == DialogResult.OK)
            {
                Application.Run(new frmMainDock());
            }
}
当跳转到frmLogin窗体后怎么不自动动跳转到frmMainDock窗体了
小银光的主页 小银光 | 初学一级 | 园豆:25
提问于:2012-05-18 10:09
< >
分享
最佳答案
0

你的frmLogin窗体中协商这个语句了吗??

if(登陆条件==true)

{

  this.DialogResult=this.DialogResult.OK;

奖励园豆:5
K战神 | 初学一级 |园豆:93 | 2012-05-23 11:52
View Code
 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Windows.Forms;
 9 
10 namespace 书店管理系统
11 {
12     public partial class Form_login : Form
13     {
14         public Form_login()
15         {
16             InitializeComponent();
17         }
18 
19 
20         int loginCount = 0;//登录次数
21         private void Form1_Load(object sender, EventArgs e)
22         {
23             
24 
25         }
26 
27         private void button_ok_Click(object sender, EventArgs e)
28         {
29             loginCount++;//自增,记录登录次数
30             //根据用户名与密码进行判断
31             if (textBox_username.Text == "admin" && textBox_password.Text == "admin")
32             {
33                 // MainForm.userName = userNameCoboBox.text;
34                 this.DialogResult = DialogResult.OK;
35             }
36             else//!!千万别忘记else这对外部的{}号,之前忘记了,肯定转不过去的
37             {
38                 if (loginCount < 3)
39                 {
40                     MessageBox.Show("用户名与密码不一致,您还有" + (3 - loginCount).ToString() + "次机会!", "登陆提示");
41 
42                 }
43                 this.DialogResult = DialogResult.No;
44             }
45             
46         }
47 
48         private void button_clear_Click(object sender, EventArgs e)
49         {
50             this.Close();
51         }
52 
53        
54        
55     }
56 }
K战神 | 园豆:93 (初学一级) | 2012-05-23 13:16
其他回答(3)
0

你单步下就知道了

wvsy | 园豆:297 (菜鸟二级) | 2012-05-18 10:14

调试结果显示login.ShowDialog()函数超时

支持(0) 反对(0) 小银光 | 园豆:25 (初学一级) | 2012-05-18 10:15

@小星星": 你不需要必须在这块写调用framMainDock这个窗体吧 ,你可以放置到login窗体的加载中或者初始化中。

支持(0) 反对(0) wvsy | 园豆:297 (菜鸟二级) | 2012-05-18 10:19

如果能这样就好了!frmLogin在一个动态库中!代码改不了!

支持(0) 反对(0) 小银光 | 园豆:25 (初学一级) | 2012-05-18 10:37
0

login.ShowDialog()没有返回DialogResult.OK吧。

forhells | 园豆:522 (小虾三级) | 2012-05-20 15:30
0

因为:login.ShowDialog()返回的值不是DialogResult.OK

所有 if (login.ShowDialog() == DialogResult.OK) 条件不成立
解决:

在frmLogin窗口上加一个按钮botton

在其单击事件处理时加上下面语句:

this.DialogResult=this.DialogResult.OK;

当frmLogin窗口关闭时就会自动跳转到frmMainDock窗体了

py_study | 园豆:8 (初学一级) | 2012-05-23 15:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册