0

我希望我可以以图形方式表示连接到我的远程数据库,因为无法知道确切的连接持续时间,我认为无休止的进度控制应该可以完成这项工作。目前我正在使用 WaitCursor 这并没有让我满意。

当我使用 Progressbar 等控件时,当我单击开始连接时,进度会停止,因为它没有在单独的线程中使用,所以我尝试使用 backgroundWorker,但不知道如何将其用于数据库连接目的。

我的代码:

using System;
using System.Linq;
using System.Windows.Forms;

namespace MyNameSpace
{
    public partial class Form1 : Form
    {
        dbDataContext db;
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            myProgressBar.Style = ProgressBarStyle.Marquee;
            System.Windows.Forms.Application.DoEvents();
            db = new dbDataContext();

            var Users = from p in db.Users
                        where p.UserName == TxtUser.Text
                        select p;
            foreach (var record in Users)
            {
                Global._UserName = record.UserName;
                Global._UserID = record.ID;
            }
            label1.Text = "User ID = " + Global._UserID;
        }
    }
}
4

1 回答 1

3

如果您不知道需要多长时间,通常的技术是在选取框模式下显示进度控件。

myProgressBar.Style = ProgressBarStyle.Marquee;
于 2012-07-18T15:25:32.323 回答