В настоящее время я имею функцию WPF, которая открывает новое окно, которое выглядит так:C# WPF busyindicator для нового окна
var sqlConnectionSetting = new SqlConnectionSettingsWnd
{
Owner = this
};
sqlConnectionSetting.Show();
Проблема заключается в том, что внутри этого окна у меня есть цикл, который ищет доступный SQL экземпляры:
string myServer = Environment.MachineName;
DataTable servers = SqlDataSourceEnumerator.Instance.GetDataSources();
for (int i = 0; i < servers.Rows.Count; i++)
{
if (myServer == servers.Rows[i]["ServerName"].ToString()) ///// used to get the servers in the local machine////
{
if ((servers.Rows[i]["InstanceName"] as string) != null)
localSqlServer.Items.Add(servers.Rows[i]["ServerName"] + "\\" + servers.Rows[i]["InstanceName"]);
else
localSqlServer.Items.Add(servers.Rows[i]["ServerName"]);
}
}
и окно занимает много времени, чтобы открыть. Я хотел использовать BusyIndicator для отображения некоторого сообщения типа «поиск SQL-серверов» или что-то в этом роде, но я не могу найти способ сделать это (я никогда не программировал XAML раньше ....) может кто-то, пожалуйста, помогите мне с этим задача? :)
Вы просматривали расширенный набор инструментов WPF: http: //wpftoolkit.codeplex.com/wikipage? Title = BusyIndicator & referringTitle = Home? Обратите внимание, что вам нужно запустить поиск экземпляра в фоновом потоке (например, используя задачи). – Dennis
В этой статье объясняется, как получить и использовать BusyIndicator http://www.c-sharpcorner.com/UploadFile/mahesh/wpf-busyindicator/ –