在登录界面,我设置了一个Label,用于显示一些信息,打算连接数据库之前先显示“正在连接数据库...”,如果连接失败,这显示“由于XXX原因,连接失败!”,可调式以后我发现,Label根本不显示“正在连接数据库...”,我用的是一个错链接,按道理30秒以后才报错,但之前这30秒应该显示“正在连接数据库...”,30秒后,Label显示“由于XXX原因,连接失败!”,我单步调试过,让Label显示“正在连接数据库...”,的代码是执行的,但为什么就不显示呢,这一步是在链接数据库之前发生的啊,不知掉为什么。

解决方案 »

  1.   

    你是怎么显示的?用timer? 还是在“连接数据库”的代码前/后显示?
      

  2.   

    代码很简单
    click事件
    {
        if(XXX)
         {
            //有关一些输入信息的合法性验证
        }
        else
        {
            //定义链接对象部分
             label.Text="正在连接数据库...";
            MySqlCommand.Connection.Open();
            label.Text = "链接成功,正在校验信息...";
        }
    }
    代码简单表示如上,我用的是SQL 2005数据库,按道理在MySqlCommand.Connection.Open()发生之前,label应该显示"正在连接数据库..."的,但却没有显示,因为我用的是错误的连接,所以直到30秒后,连接错误,进入catch以后,label才显示"访问数据库服务器出错,请保证数据源的正确性!",就这,我实在没法理解。
      

  3.   

    更搞笑的问题出现了,我在label.Text="正在连接数据库..."; 后增加了一条语句,MessageBox.Show("XXX");结果在弹出消息框的时候,我看了下,label又显示"正在连接数据库..."了。