private async void Unpack() { await Task.Run(async() => { int itemsRemaining = _targetPaks.Count; foreach (Pak pak in _targetPaks) { string pakFileSize = FileSizeHelper.GetHumanReadableSize(pak.PakFileSize); string result = null; SetLabels(pak.PakFolderName, pakFileSize, itemsRemaining); result = await _assetUnpacker.UnpackPakFile(pak.PakFilePath); if (!_taskRunning) { break; } itemsRemaining -= 1; AddResultToListBox(result); } }); _canClose = true; CancelBtn.Content = "Close"; SetLabels("No operation in progress.", "Not unpacking anything.", 0); }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { return(FileSizeHelper.GetHumanReadableSize(long.Parse(value.ToString()))); }