This is a VERY simple progress bar control. What it does differently is that it has three useful methods: FileCopy, GetByteArray and GetString.
FileCopy method returns True if succeeds in coping a file.
GetByteArray method returns the complete file in a byte array.
GetString method returns the file as a string (in the same way you read a regular file).
Reading a file to byte array is optimized with a fake safearray so there is no needless memory movement involved at any point. All file handling is chunked to 64 kB. The progress bar updates automatically when using one of the custom methods. The progress bar has two events: Change and Progress. Change event occurs when the text percentage in the control has been updated. Progress event occurs when a visual change happened.
This progress bar is also very lightweight and fast. It never updates itself if it doesn't need to. Min, Max and Value properties are supported so you can use it as a regular progress bar, too.