ApplyChanges() doesn't work at the first time

Hi, I’m trying to change the screen state from Full to non-Full at runtime.

When the window is properly maximized and I call

graphics.IsFullscreen = false; 
ApplyChanges();

the window become non-Full screen but its width and height remains as at the maximum resolution (1920x1080).

But if I put ApplyChanges(); into the Update or Draw method, so it’s called every frame, when I call graphics.IsFullscreen = false; all goes right.

Any suggestion? Thanks.