예제 #1
0
        /// <summary>
        /// プロパティグリッドの内容からプリセットを作成する。
        /// </summary>
        /// <returns>プリセット。プリセット名が不正な場合は null 。</returns>
        private Preset MakePresetFromPropertyGrid()
        {
            // プリセット名を取得
            var name = textPresetName.Text;
            if (!Preset.IsValidName(name))
            {
                return null;
            }

            // 字幕情報を取得
            var info = propCaption.SelectedObject as CaptionInfo;
            if (info == null)
            {
                return null;
            }

            // プリセットを作成
            var preset = new Preset(name, info.Clone());

            return preset;
        }
예제 #2
0
        /// <summary>
        /// 指定したプリセットでプロパティグリッドを更新する。
        /// </summary>
        /// <param name="preset">プリセット。</param>
        private void UpdatePropertyGrid(Preset preset)
        {
            try
            {
                propCaption.SuspendLayout();

                // プリセット名設定
                textPresetName.Text = preset.Name;

                // プロパティグリッドのソースを設定
                propCaption.SelectedObject = preset.Value.Clone();
            }
            finally
            {
                propCaption.ResumeLayout(true);
            }
        }