ARCed.Controls.GraphicsDeviceControl.HandleDeviceReset C# (CSharp) Метод

HandleDeviceReset() приватный Метод

Helper used by BeginDraw. This checks the graphics device status, making sure it is big enough for drawing the current control, and that the device is not lost. Returns an error string if the device could not be reset.
private HandleDeviceReset ( ) : string
Результат string
        string HandleDeviceReset()
        {
            bool deviceNeedsReset = false;

            switch (this.GraphicsDevice.GraphicsDeviceStatus)
            {
                case GraphicsDeviceStatus.Lost:
                    // If the graphics device is lost, we cannot use it at all.
                    return "Graphics device lost";

                case GraphicsDeviceStatus.NotReset:
                    // If device is in the not-reset state, we should try to reset it.
                    deviceNeedsReset = true;
                    break;

                default:
                    // If the device state is ok, check whether it is big enough.
                    PresentationParameters pp = this.GraphicsDevice.PresentationParameters;

                    deviceNeedsReset = (ClientSize.Width > pp.BackBufferWidth) ||
                                       (ClientSize.Height > pp.BackBufferHeight);
                    break;
            }

            // Do we need to reset the device?
            if (deviceNeedsReset)
            {
                try
                {
                    this.graphicsDeviceService.ResetDevice(ClientSize.Width,
                                                      ClientSize.Height);
                }
                catch (Exception e)
                {
                    return "Graphics device reset failed\n\n" + e;
                }
            }

            return null;
        }