Show a Copying-files dialog/form while manually copying files in C#?(在 C# 中手动复制文件时显示复制文件对话框/表单?)
问题描述
我正在通过 C# 手动复制一些文件夹和文件,并且我想向用户展示实际正在发生的事情.目前,该程序看起来好像它被冻结了,但它实际上是在复制文件.
I am manually copying some folders and files through C#, and I want to show the user that something is actually going on. Currently, the program looks as if its frozen, but it is actually copying files.
我认为已经有一个显示该过程的内置对话框或表单,类似于在 Windows 资源管理器中复制/移动文件.有没有类似的东西,还是我必须从头开始创建所有东西?
I would think there is already a built-in dialog or form that shows the process, similar to copying/moving files in windows explorer. Is there anything like that available, or will I have to create everything from scratch?
另外,这是否是向用户显示某事正在积极进行的最佳方法?
Also, would this be the best method to show the user that something is actively going on?
感谢您的帮助!
推荐答案
Microsoft.VisualBasic.FileIO 命名空间内置了一个.不要让这个名字吓到你,它是一个非常被低估的 C# 命名空间.静态类 FileSystem 有一个 CopyFile 和 CopyDirectory 方法具有该功能.
There is one built in from the Microsoft.VisualBasic.FileIO Namespace. Don't let the name scare you, it is a very underrated namespace for C#. The static class FileSystem has a CopyFile and CopyDirectory method that has that capability.
文件系统成员
密切注意 CopyFile 和 CopyDirectory 方法中的 UIOption.此模拟显示 Windows 资源管理器复制窗口.
Pay Close attention to the UIOption in both the CopyFile and CopyDirectory methods. This emulates displays the Windows Explorer copy window.
FileSystem.CopyFile(sourceFile, destinationFile, UIOption.AllDialogs);
FileSystem.CopyDirectory(sourceDirectory, destinationDirectory, UIOption.AllDialogs);
这篇关于在 C# 中手动复制文件时显示复制文件对话框/表单?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 C# 中手动复制文件时显示复制文件对话框/表单?
基础教程推荐
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
- WPF 模态进度窗口 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
