AFAIK there is no other way to do it

What's wrong with the 'destroy.. reset.. recreate' method? When you change your displaymode from fullscreen to windowed, windows GDI takes control of all video-memory. Therefore it erases all data it doesn't know... your textures, meshes font's etc... just to free mem for windows tasks. That 's why you need to re-create your resources every time.

You said it worked for you, so i would use that method, instead of wondering whether there is another way to do it.

Greets Chronozphere.