예제 #1
0
        /// <summary>
        /// コンストラクタ
        /// </summary>
        public MainWindowViewModel()
        {
            Source = MenuModel.Instance;

            MenuItems = Source.MenuItems.ToSyncedSynchronizationContextCollection(
                model =>
                model.Type == MenuItemType.Favorite
                    ? new MenuItemByFavoriteViewModel(this, model)
                    : new MenuItemViewModel(this, model),
                SynchronizationContext.Current
                );

            // 初回起動時のワークスペース
            Current = new RankingViewModel();
        }
예제 #2
0
        /// <summary>
        /// カレントを変更します。
        /// </summary>
        /// <param name="sender">変更の起点となるメニューアイテム</param>
        /// <param name="args">引数(なし)</param>
        public void OnCurrentChanging(object sender, EventArgs args)
        {
            switch (((MenuItemViewModel)sender).Type)
            {
            case MenuItemType.SearchByWord:
                Current = new SearchByWordViewModel();
                break;

            case MenuItemType.Ranking:
                Current = new RankingViewModel();
                break;

            default:
                break;
            }
        }