示例#1
0
        protected void SetRenderImageState(RenderImageState renderImageState)
        {
            if (this.renderImageState == renderImageState)
            {
                return;
            }

            RenderImageState oldRenderImageState = this.renderImageState;
            this.renderImageState = renderImageState;

            if (oldRenderImageState != RenderImageState.Idle && oldRenderImageState != RenderImageState.DownloadProgress || renderImageState == RenderImageState.Idle)
            {
                throw new Granular.Exception("Can't change BitmapSource.RenderImageState from \"{0}\" to \"{1}\"", oldRenderImageState, renderImageState);
            }

            switch (renderImageState)
            {
                case RenderImageState.DownloadProgress:
                    IsDownloading = true;
                    DownloadProgress.Raise(this);
                    break;

                case RenderImageState.DownloadCompleted:
                    IsDownloading = false;
                    DownloadCompleted.Raise(this);
                    break;

                case RenderImageState.DownloadFailed:
                    IsDownloading = false;
                    DownloadFailed.Raise(this);
                    break;

                default: throw new Granular.Exception("Unexpected DownloadState \"{0}\"", renderImageState);
            }
        }
示例#2
0
        private void SetRenderImageState()
        {
            if (this.renderImageState == renderResource.State)
            {
                return;
            }

            RenderImageState oldRenderImageState = this.renderImageState;

            this.renderImageState = renderResource.State;

            if (oldRenderImageState != RenderImageState.Idle && oldRenderImageState != RenderImageState.DownloadProgress || renderImageState == RenderImageState.Idle)
            {
                throw new Granular.Exception("Can't change BitmapSource.RenderImageState from \"{0}\" to \"{1}\"", oldRenderImageState, renderImageState);
            }

            switch (renderImageState)
            {
            case RenderImageState.DownloadProgress:
                IsDownloading = true;
                DownloadProgress.Raise(this);
                break;

            case RenderImageState.DownloadCompleted:
                IsDownloading = false;
                DownloadCompleted.Raise(this);
                break;

            case RenderImageState.DownloadFailed:
                IsDownloading = false;
                DownloadFailed.Raise(this);
                break;

            default: throw new Granular.Exception("Unexpected DownloadState \"{0}\"", renderImageState);
            }
        }