Ответы пользователя по тегу WPF
  • Как, используя паттерн Wapper (Decorator/Wrapper), наследовать запечатанный класс?

    @stringer
    Он для того и запечатан, чтоб не наследовался. Wrapper это не способ наследования. Вы можете на обёртке полностью воспроизвести интерфейс класса (ещё лучше если у PathFigureCollection есть декларированный интерфейс - заимплементить его) и пользоваться этой обёрткой вместо PathFigureCollection.

    Как-то так:
    public class PathFigureCollectionWrapper
    {
      private PathFigureCollection _pfc;
    
      public PathFigureCollectionWrapper(PathFigureCollection pfc)
      {
        _pfc = pfc;
      }
    
      public int Method()
      {
        return _pfc.Method();
      }
    }

    нужные методы обёртки просто содержат вызовы обёрнутого экземпляра класса.
    Решарпер, кстати, генерит обёртки в один клик.
    Ответ написан
    1 комментарий