コード例 #1
0
ファイル: ShellViewModel.cs プロジェクト: semmaxim/TestVpn
        public ShellViewModel(IViewModelFactoryService viewModelFactoryService)
        {
            _ViewModelFactoryService = viewModelFactoryService;

            ServerSelectCommand = new Command(ServerSelect);

            _ConnectionViewModel = _ViewModelFactoryService.CreateViewModel <ConnectionViewModel>();
            CurrentViewModel     = _ConnectionViewModel;
        }
コード例 #2
0
        public MasterDetailViewModelFactory(IViewModelFactoryService viewModelFactoryService)
        {
            _viewModelFactoryService = viewModelFactoryService;

            Keys = new List <string>
            {
                MasterDetailItems.Root,
                MasterDetailItems.Drill,
                MasterDetailItems.Item
            };
        }
コード例 #3
0
 public PaginationViewModel(
     IViewModelFactoryService viewModelFactory,
     Func <int, int, Task <PagingModel <TModel> > > loaderAction,
     Func <IReadOnlyList <TViewModel>, IReadOnlyList <TViewModel> > filterAction,
     int pageSize)
 {
     _viewModelFactoryService = viewModelFactory ?? throw new ArgumentNullException(nameof(viewModelFactory));
     _loaderAction            = loaderAction ?? throw new ArgumentNullException(nameof(loaderAction));
     _filterAction            = filterAction;
     _pageSize = pageSize;
 }
コード例 #4
0
        public RootMasterDetailPageViewModel(
            MasterPageViewModel masterPageViewModel,
            IViewModelFactoryService viewModelFactoryService)
        {
            _viewModelFactory = new MasterDetailViewModelFactory(viewModelFactoryService);

            _masterPageViewModel = masterPageViewModel;
            _masterPageViewModel.Initialize(_viewModelFactory.Keys, new RelayCommand <string>(OnMasterItemSelected));

            _detailViewModel = _viewModelFactory.GetViewModelByKey(_masterPageViewModel.Items[0]);
        }
コード例 #5
0
        public MainWindowViewModel(IViewModelFactoryService viewModelFactoryService)
        {
            _viewModelFactoryService = viewModelFactoryService;

            CurrentControls = new List <UserControl>();
            CurrentControls.Add(new TechnologicalProcessView()
            {
                DataContext = (TechnologicalProcessViewModel)_viewModelFactoryService.CreateViewModel(ViewType.TechnologicalProcess)
            });
            CurrentControls.Add(new DatabaseView()
            {
                DataContext = (DatabaseViewModel)_viewModelFactoryService.CreateViewModel(ViewType.Database)
            });

            ShowTreeViewCommand     = new DelegateCommand((o) => ShowTreeView());
            ShowDatabaseViewCommand = new DelegateCommand((o) => ShowDatabaseView());
            CloseApplicationCommand = new DelegateCommand((o) => Environment.Exit(0));
        }
コード例 #6
0
        public ChatManager(
            IChatService chatService,
            IMessagesCache messagesCache,
            IViewModelFactoryService viewModelFactoryService,
            ILogManager logManager,
            IUploadImageService uploadImageService,
            ICache localCache)
        {
            _chatService             = chatService;
            _messagesCache           = messagesCache;
            _viewModelFactoryService = viewModelFactoryService;
            _uploadImageService      = uploadImageService;
            _localCache = localCache;
            _logger     = logManager.GetLogger <ChatManager>();

            _messagesCache.Init(new TaskReference <MessagesQuery, IList <ChatMessageModel> >(query =>
            {
                return(_chatService.GetMessagesFromAsync(query));
            }));

            _messagesCache.CacheUpdated       += OnCacheUpdated;
            ChatsCollection.CollectionChanged += OnChatsCollectionCollectionChanged;

            _subscriptions.Add(_chatService.MessageReceived.Subscribe(AddLatestMessage));
            _subscriptions.Add(_chatService.MessageEdited.Subscribe(OnMessageEdited));
            _subscriptions.Add(_chatService.MessageDeleted.Subscribe(OnMessageDeleted));
            _subscriptions.Add(_chatService.ChatAdded.Subscribe(x => TryAddChat(x)));
            _subscriptions.Add(_chatService.ChatRemoved.Subscribe(OnChatRemoved));
            _subscriptions.Add(_chatService.ChatUpdated.Subscribe(OnChatUpdated));
            _subscriptions.Add(_chatService.ChatRead.Subscribe(OnChatRead));

            _subscriptions.Add(_chatService.ConnectionStatusChanged.Subscribe(OnConnectionStatusChanged));
            OnConnectionStatusChanged(_chatService.ConnectionStatus);

            Messenger.Default.Register <ChatInForegroundMessage>(this, x => _chatService.ForceReconnect());
            Messenger.Default.Register <ChatInBackgroundMessage>(this, x => _chatService.ForceDisconnect());
        }
コード例 #7
0
 public CollectionViewModel()
 {
     Model            = new RangeObservableCollection <TModel> ();
     viewModelFactory = App.Current.DependencyRegistry.Retrieve <IViewModelFactoryService> ();
 }
コード例 #8
0
        public GroupedByTimeItemViewModel(IViewModelFactoryService viewModelFactoryService)
        {
            _viewModelFactoryService = viewModelFactoryService;

            Items = new ObservableCollection <ItemViewModel>();
        }
コード例 #9
0
 public PlaylistPlayElementVM()
 {
     factoryService = App.Current.DependencyRegistry.Retrieve <IViewModelFactoryService> (InstanceType.Default);
 }
コード例 #10
0
 public AllViewModel(IViewModelFactoryService viewModelFactoryService, IEventAggregator eventAggregator) : base(viewModelFactoryService)
 {
     eventAggregator.Subscribe(this);
 }
コード例 #11
0
 public GroupedByTimeItemsViewModel(IViewModelFactoryService viewModelFactoryService)
 {
     _viewModelFactoryService = viewModelFactoryService;
 }