protected virtual void UpdateProgress() { if (IsVisible) { instance.SetProgress64(Value, TotalValue); } }
// INamespaceWalkCB public HRESULT FoundItem(IShellFolder psf, IntPtr pidl) { HRESULT hr = HRESULT.S_OK; if (_fCountingFiles) { _cFilesTotal++; } else { _cFileCur++; var psi = SHCreateItemWithParent <IShellItem2>(psf, pidl); hr = _ProcessItem(psi); try { string pszName = psi.GetDisplayName(SIGDN.SIGDN_NORMALDISPLAY); _ppd.SetProgress64(_cFileCur, _cFilesTotal); _ppd.SetLine(2, pszName, true); } catch { } } return(_ppd.HasUserCancelled() ? HRESULT_FROM_WIN32(Win32Error.ERROR_CANCELLED) : hr); }
/// <summary> /// Установить прогресс выполнения в диалоге /// </summary> /// <param name="completed">Сколько выполнено</param> /// <param name="total">Сколько всего надо выполнить</param> public void SetProgress(ulong completed, ulong total) { _progressDialog.SetProgress64(completed, total); }