Как реализовать индикатор выполнения в wpf?

1

Здравствуйте, у меня есть требование использовать индикатор выполнения в wpf, в котором я должен связать индикатор выполнения с моим кодом, т.е. Когда я нажимаю кнопку импорта, у меня есть некоторые условия и классы, которые будут выполняться, потому что это занимает некоторое время, поэтому я хотите, чтобы индикатор выполнения показывал моему пользователю, сколько процентов было выполнено, пожалуйста, помогите моему запросу найти настоящую помощь.

{
Microsoft.Win32.OpenFileDialog selectExcel = new Microsoft.Win32.OpenFileDialog();
            selectExcel.Filter = "Excel Files|*.xlsm";
            MSAccessOperations accessOperations = new MSAccessOperations();

            Nullable<bool> result = selectExcel.ShowDialog();
            if (result == true)
            {

                string excelFilename = selectExcel.FileName;
             // Here i want to start my progress bar

                if (excelFilename.Contains("NHE PLUS File"))
                    accessOperations.ReadNHEXlsmFile(excelFilename);
                else if (excelFilename.Contains("Total Build File"))
                    accessOperations.ReadTBXlsmFile(excelFilename);
            // Here i want to complete the progress bar
}
Теги:
wpf

1 ответ

1

Вы показываете только код, который вы используете для открытия файла.
Что вы пробовали в отношении индикатора прогресса?

Чтобы сделать индикатор выполнения в WPF, добавьте элемент ProgressBar в свой пользовательский интерфейс (XAML):

<ProgressBar x:Name="progress" Minimum="0" Maximum="100" />

Затем обновите его значение в коде:

progress.Value = 50;

Документация и учебник MSDN.

Трудность здесь заключается в получении информации о ходе работы с помощью методов Read...File(). Возможно, вам придется реорганизовать свой класс MSAccessOperations для MSAccessOperations событий, указывающих на прогресс. Но это не связано с WPF.

  • 0
    согласитесь с Xavier, вам нужно постоянно обновлять значение индикатора выполнения со ссылкой на ваш бэкэнд-код.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню