Update Texture2D.cs

I have added some functionality to the DirectX version, though it's not optimized.
I have no experience messing with SharpDX, so I don't know if this is really optimized.
Only working for Color SurfaceFormat, going to implement more.

-> Tested on a 1024x1024 Texture getting a 512x512 rectangle on the middle of it (x:256 y:256 width:512 height:512).