I didn't even know SharpDevelop existed until today. Never tried to use it, obviously. But I can suggest some ideas about the problems.
The unhandled exception may be because you compiled in Debug mode and/or because SharpDevelop added some interrupt code that the IDE handles for your application. It "feels" like that to me. Sometimes, an IDE stuffs "hooks" into the code generation which generate an interrupt that the IDE informs Windows it will handle. That way, the application feeds information back to the IDE. If the IDE isn't present, Windows has NO IDEA what to do. So instead it generates an error very much like what you reported. So this really may NOT be a .NET question, but more a SharpDevelop question. And there, I can't help at all.
To work towards solving the other problem, I'd try to first reboot the computer. This ALWAYS clears the "being used by another process" problem, unless there is a server process that attaches the file at reboot. Don't use your program to re-attempt the access, at first. Just try and rename the file after rebooting. If that works, then it's not being locked. Then rename it back and try your program. However, I fear you will have that problem with the unhandled exception. And then, perhaps, the 2nd time you try running your program you may get that "used by another process" problem, as Windows was confused by the prior run and is now just going to be a pain about it.
So I'd really focus on the first problem and get that resolved..
Clicking on continue just tells Windows to ignore the wayward exception and return to the code after it. Lots of times that allows the code to work. If it is an IDE hook, there is no reason your code won't work afterwards (unless it tries to hook the IDE again, of course.)