コード例 #1
0
        /// <summary>
        /// Actually starts the file copy process on a seperate thread.
        /// </summary>
        private void StartFileCopy()
        {
            int totalCount  = 0;
            int copiedCount = 0;

            try
            {
                FileManipulator.DeepCopy(sourcePath, destinationPath, (copied) =>
                {
                    totalCount++;
                    if (copied)
                    {
                        copiedCount++;
                    }
                    this._view.SetProgress(totalCount);
                    this._view.DisplayProgressMessage($"Copied {copiedCount}, ignored {totalCount - copiedCount} of {totalCount} checked items out of {numberOfFiles} items");
                });
            } catch (Exception e)
            {
                this._view.DisplayErrorMessage(e.Message);
                this._view.DoneCopyingFiles();
                return;
            }
            this._view.DisplayMessage($"Done copying. Copied {copiedCount}, ignored {totalCount - copiedCount} of {totalCount} checked items out of {numberOfFiles} items");
            this._view.DoneCopyingFiles();
        }