/// <summary>
        /// Constructor for viewmodel associated with MainPage.xaml.
        /// Registers all commands to methods.
        /// </summary>
        /// <param name="remFileStore"></param>
        /// <param name="pageService"></param>
        public MainPageViewModel(IRemFileStore remFileStore, IPageService pageService)
        {
            this._pageService  = pageService;
            this._remFileStore = remFileStore;

            LoadDataCommand      = new Command(async() => await LoadData());
            AddRemFileCommand    = new Command(async() => await AddRemFile());
            DeleteRemFileCommand = new Command <RemFileViewModel>(async r => await DeleteRemFile(r));
            SearchCommand        = new Command <string>(Search);
            SelectCommand        = new Command <RemFileViewModel>(async r => await SelectRemFile(r));
        }
Пример #2
0
        /// <summary>
        /// Constructor for viewmodel associated with RemFileDetailPage.xaml
        /// </summary>
        /// <param name="viewModel">RemFileViewModel currently showing details for</param>
        /// <param name="remFileStore">DB connection</param>
        /// <param name="pageService">PageService</param>
        public RemFileDetailPageViewModel(RemFileViewModel viewModel, IRemFileStore remFileStore, IPageService pageService)
        {
            if (viewModel == null)
            {
                throw new ArgumentNullException(nameof(viewModel));
            }

            this._remFileStore = remFileStore;
            this._pageService  = pageService;

            UpdateViewFromRemFile(viewModel);

            SaveCommand  = new Command(async() => await Save());
            PhotoCommand = new Command(async() => await Photo());
        }