protected override void OnIsRetainedChanged(bool isRetained)
        {
            var mngr = this.ManagerPointer.GetManager();

            if (mngr == null)
            {
                return;
            }
            mngr.StopRequest(this._request);
            if (!isRetained)
            {
                this._request = RenderIntervalRequest.Invalid;
                return;
            }
            this._request = mngr.StartRequest(this._interval);
        }
        private void AssertCurrentRequestRunning(bool running)
        {
            var mngr = this.ManagerPointer.GetManager();

            if (mngr == null)
            {
                return;
            }
            mngr.StopRequest(this._request);
            if (!running)
            {
                this._request = RenderIntervalRequest.Invalid;
                return;
            }
            this._request = mngr.StartRequest(this._interval);
        }