예제 #1
0
        public InfoWarningErrorMessageController()
        {
            Current.ServiceChanged += EhServiceChanged;
            _unreversedDoc          = new ObservableCollection <InfoWarningErrorTextMessageItem>();
            _reversedDoc            = new Collections.ObservableCollectionReversingWrapper <InfoWarningErrorTextMessageItem>(_unreversedDoc);
            _currentDoc             = _unreversedDoc;

            _commandClearAllMessages = new RelayCommand(EhClearAllMessages);
            _commandReverseMessages  = new RelayCommand(EhReverseAllMessages);

            _shutDownService = new CachedService <IShutdownService, IShutdownService>(false,
                                                                                      (shutdownService) => shutdownService.Closed += EhApplicationClosed,
                                                                                      (shutdownService) => shutdownService.Closed -= EhApplicationClosed);
            _shutDownService.StartCaching();

            var memento = Current.PropertyService.GetValue(PropertyKeyMessageControlState, RuntimePropertyKind.UserAndApplicationAndBuiltin, () => null);

            if (null != memento)
            {
                SetMemento(memento);
            }


            EhServiceChanged();
        }