UserControls/BasePatternMasterDgvControl.cs

using ChatworkBulkSender.Daos;
using ChatworkBulkSender.Dtos;
using ChatworkBulkSender.Forms;
using System;
using System.Collections.Generic;
using System.ComponentModel;

namespace ChatworkBulkSender.UserControls
{
    /// <summary>
    /// 送信パターンマスタDGVへの派生として中間クラスを定義。
    /// </summary>
    [DesignerCategory("")] // デザイナーで表示しない
    public partial class BasePatternMasterDgvControl : AbstractBaseMasterDgvControl<PatternMasterDto, PatternMasterDao, M_SendPatternIndividualEdit>
    {
        protected override int EditButtonColumnIndex => 0;

        protected override int SortableColumnMaxIndex => 0;

        protected override string InitialSortColumnName => string.Empty;

        public BasePatternMasterDgvControl() : base() { }

        protected override List<PatternMasterDto> GetDataFromDao()
        {
            if (IsInDesignMode()) { return new List<PatternMasterDto>(); }

            throw new NotImplementedException("この実装は派生クラスでオーバーライドしてください。");
        }

        protected override bool HasUpdateAfter(DateTime? lastLoadTime)
        {
            if (IsInDesignMode()) { return false; }

            throw new NotImplementedException("この実装は派生クラスでオーバーライドしてください。");
        }

        protected override void ShowEditForm(PatternMasterDto selectedItem)
        {
            if (!IsInDesignMode()) { }

            throw new NotImplementedException("この実装は派生クラスでオーバーライドしてください。");
        }
    }
}