private void RefreshFilesCount(IFolderBrowserDataContext dataContext) { if (dataContext == null) { return; } var vm = dataContext.FolderBrowserViewModel; if (vm == null) { return; } long fileCount = 0; long regFileCount = 0; long dirCount = 0; try { foreach (var file in vm.FileRows) { if (file.File is IRegularFile) { regFileCount++; } else if (file.File is IDirectory) { dirCount++; } fileCount++; } ThreadInvoker.UIInvoke(() => { var fileCountItem = StatusBarService.GetOrCreateStatusBarTextItem(Constants.StatusBarItemText_FileCount, GridChildLength.Auto, 5); var regFileCountItem = StatusBarService.GetOrCreateStatusBarTextItem(Constants.StatusBarItemGUID_RegFileCount, GridChildLength.Auto, 6); var dirCountItem = StatusBarService.GetOrCreateStatusBarTextItem(Constants.StatusBarItemGUID_DirectoryCount, GridChildLength.Auto, 7); fileCountItem.Text = $"{LanguageService.FindResourceString(Constants.StatusBarItemText_FileCount)} {fileCount}"; regFileCountItem.Text = $"{LanguageService.FindResourceString(Constants.StatusBarItemText_RegFileCount)} {regFileCount}"; dirCountItem.Text = $"{LanguageService.FindResourceString(Constants.StatusBarItemText_DirectoryCount)} {dirCount}"; }); } catch (Exception ex) { LoggerService.WriteCallerLine(ex.Message); } }