   Changing render window size at Runtime
  I used to think it's impossible to change the render window size for a big game at  run time. Because you know the device will reset once you change the render window  size, that means every content need to be reload. Until I saw what World Of Warcraft has done: When the game is running on window mode, it can be scale anytime you want.That's what I'm trying, I know it must be first draw on the map  in a constant resolution, then drag the rendered map to fit the client size and here is the problem:Now I'm using Managed DirectX, I found once the client size changed, it'll immediately call the device.Reset(). So how to stop this ? I think it's not good to put this logic in my OnDeviceReset() function, is there any better way to make this ?   
  The content doesn't have to be reloaded, it just has to be sent to the graphics card again from memory. This is considerably faster than reloading the content from disk to memory.   ;  But is there any way to totally avoid this ? Like WOW, You can see there is almost no lag when you scale the window   ;  Then you can look into D3DPOOL_MANAGED, which may keep your data in video card memory even when a reset occurs.As for the reset issue, the device becomes automatically lost when the client size changes or focus is lost, and there is nothing you can do to prevent this. The device is not usable anymore until it's reset, which is why automatic reset is actually useful.   ;  If you mean the user dragging the corner of the window when running in windowed mode, then you can create a 1x1 backbuffer when you create your device, and then create a seperate swap chain.That allows you to destroy and recreate the swap chain without having to reset the device (and reload everything to VRAM). You'll still have to reset the device when going from windowed to fullscreen or vice-versa though.And you should be using the managed pool for all non-dynamic resources anyway, so use it if you're not.   ;  I have specified the size of back buffer but it was still calling device.Reset().   The managed D3Ddevice is so automatically that the Device.OnParentResize() seems have delegated to the Control.OnResize() function, then the Device.OnParentResize() called Device.Reset(). And finally I found this Event in the Managed D3Ddevice device.DeviceResizing += new System.CancelEventHandler(this.DeviceResizingEventHandler);That mean I must cancel this event handler manually. I hate automatic T_TThx Every one   