/// <summary>
        /// This is called to preinitialize the main vm. 
        /// </summary>
        protected override void PreInitialize()
        {
            base.PreInitialize();

            // init mru files view model
            this.mruFilesViewModel = new MRUFilesViewModel(this.ViewModelStore, this);
        }
        /// <summary>
        /// Clean up.
        /// </summary>
        protected override void OnDispose()
        {
            if (this.mruFilesViewModel != null)
                this.mruFilesViewModel.Dispose();
            this.mruFilesViewModel = null;

            if( this.LayoutManager != null )
                this.LayoutManager.Dispose();
            this.LayoutManager = null;

            base.OnDispose();
        }