コード例 #1
0
        /// <summary>選択中の類語グループに基づき、類語一覧を更新する</summary>
        /// <param name="groupId">取得対象のグループID</param>
        private void UpdateDisplaySynonymWords(int groupId)
        {
            // 呼ばれるのは、類語ウィンドウで類語の更新がされたときか、メインウィンドウで類語グループ選択が変更されたとき
            // そのため、いずれにせよ一旦表示中の類語一覧をクリアしてしまった方が良い
            DisplaySynonymWords.Clear();

            if (_model == null)
            {
                return;
            }

            SynonymWordEntity[] entities = _model.GetSynonymWordEntities(groupId);
            if (entities == null || entities.Any() == false)
            {
                // todo:ログ
                Logger.Error(CLASS_NAME, "UpdateDisplaySynonymWords", "search synonym entites are null!");
            }

            // 表示用のEntityに入れ直して反映させる
            foreach (SynonymWordEntity entity in entities)
            {
                if (entity == null)
                {
                    continue;
                }

                DisplaySynonymWord displaySynonymWord = new DisplaySynonymWord()
                {
                    WordID      = entity.WordID,
                    SynonymWord = entity.Word
                };
                DisplaySynonymWords.Add(displaySynonymWord);
            }
        }