C # - Улучшение инкапсуляции свойства в этом примере?

Я знаю об ошибке «Модификатор доступности set accessor должен быть более строгим, чем свойство или индексатор». Я также знаю решение. Только не в этом очень конкретном случае.

Рассмотрим этот пример:

    internal virtual bool IsFocused
    {
        get
        {
            return isFocused;
        }
        protected set
        {
            isFocused = value;
        }
    }
    private bool isFocused;

Это как ошибка. Я просто не знаю почему. Чем «защищенный» не менее доступен, чем внутренний? Каково было бы решение этой проблемы? Я безуспешно пытался поставить «внутреннюю защиту».

10
задан Mathias Lykkegaard Lorenzen 5 August 2015 в 05:56
поделиться