Я работаю над приложением, которое подключается к базе данных сразу же после ее открытия. Иногда это занимает около 10-15 секунд, прежде чем файл базы данных подключается, и до тех пор никакие элементы управления не загружаются, он просто загружает пустое окно, и курсор показывает работу. Я попытался использовать библиотеку this, чтобы использовать анимированный GIF, но он не загружает ее перед попыткой подключения к БД. Я использую SQL Server Express и подключаюсь к файлу mdf. Я попытался разместить код для отображения <image/>
до Объекты SqlConnection и SqlDataAdapter, но даже это не помогло. Мы ценим любые предложения. Заранее спасибо.Анимированный GIF, когда база данных подключается в WPF
0
A
ответ
0
ли все процессы загрузки в другом потоке, Лучший способ сделать это, чтобы использовать BackgroundWorker
http://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker.aspx
Initialize bw.WorkerSupportsCancellation = истина; bw.WorkerReportsProgress = true; bw.DoWork + = новый DoWorkEventHandler (bw_DoWork);
Использования частного недействительный bw_DoWork (объект отправитель, DoWorkEventArgs е) { BackgroundWorker работник = отправитель, как BackgroundWorker;
for (int i = 1; (i <= 10); i++)
{
if ((worker.CancellationPending == true))
{
e.Cancel = true;
break;
}
else
{
// Perform a time consuming operation and report progress.
System.Threading.Thread.Sleep(500);
worker.ReportProgress((i * 10));
}
}
}
, когда вы получаете данные от db вашего замораживания UI. Вы должны использовать BackgroundWorker (http://msdn.microsoft.com/en-US/library/system.componentmodel.backgroundworker.aspx). Я также рекомендовал использовать BusyIndicator (http://wpftoolkit.codeplex.com/wikipage?title=BusyIndicator). – kmatyaszek