2013-08-17 3 views
0

Я работаю над приложением, которое подключается к базе данных сразу же после ее открытия. Иногда это занимает около 10-15 секунд, прежде чем файл базы данных подключается, и до тех пор никакие элементы управления не загружаются, он просто загружает пустое окно, и курсор показывает работу. Я попытался использовать библиотеку this, чтобы использовать анимированный GIF, но он не загружает ее перед попыткой подключения к БД. Я использую SQL Server Express и подключаюсь к файлу mdf. Я попытался разместить код для отображения <image/> до Объекты SqlConnection и SqlDataAdapter, но даже это не помогло. Мы ценим любые предложения. Заранее спасибо.Анимированный GIF, когда база данных подключается в WPF

+2

, когда вы получаете данные от db вашего замораживания UI. Вы должны использовать BackgroundWorker (http://msdn.microsoft.com/en-US/library/system.componentmodel.backgroundworker.aspx). Я также рекомендовал использовать BusyIndicator (http://wpftoolkit.codeplex.com/wikipage?title=BusyIndicator). – kmatyaszek

ответ

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)); 
     } 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^